Not everyone likes upkeep, but it is necessary (I don't actually know why does it exist). So I tought: why not making it more rational?
My idea, consist in changing Upkeep into Durability.
Each weapon has its durability, once it reaches 0 it will be necessary to repair the weapon (just like new).
The durability decreases a bit for each use (armors lose durability each time that they get hit), and if they aren't used, the durabilty just doesn't decrease.
The price should be the very same of now, but paying each 1 - 2 rounds the upkeep for an item, well, makes everything more frustrating.