The largest problem, imho, is the sprawl and that you can enter it at any point. Perhaps we should only be able to enter the city in the middle tile. Or, if that is surrounded, one of the 3x3 tiles around the original tile. The other tiles would either be blocked completely from passing, or they'd just be "decoration", you can stand on them but that's it, it won't make you enter the town. Enemies attacking the city would be able to attack any tile though. Caravans would have to travel all the way to the core.
I think there is not a lot of interesting choices in level 1 and level 2 cities. It's mostly buildings that boost production in some manner. After that, and with some research, your options become much more interesting, and they're absolutely affected by the city's levelup bonuses.
But at the end of the day, what does a city REALLY do? It has production. It produces tech, and taxes, and ZOC. It provides defensive bonuses to defenders, in various quantities. It can give bonuses to trained units. It provides a focal point for gathering world resources, and caravans. Also some buildings summon defenders. Edit: Cities also function as shops, with some items available from tech and others from improvements. I think if we want to improve on what cities DO, we need to think of interesting ways to expand or improve on those functions, or come up with new ones.
To make the player not build everything in the game, the maintenance part of improvements needs to be tweaked. My logic is thus: if you can build everything, you will. If you are limited, you will only build what you really want. I would test something like 1 maintenance on all buildings, and 2-3 on those that already have maintenance.
Some ideas for new functions in cities:
- casting chambers and similar - improves spellcasting for stationed units, makes mana maintenance on stationed units half cost
- some sort of building that reduces wages for stationed units
- towers that increase line of sight around the city
- some sort of strategic military power, that allows you to attack approaching enemies at range @ la civ5
- buildings that reduce the appeal of the city to monsters and possibly AI. Ie, buildings that make a city look more powerful than it really is, or look LESS powerful than it is
- sieges, with a deeper upgrade system to city walls and defensive structures - perhaps you even get to design the tactical map yourself in a basic chess-like layout
- cities as event-producers or quest-producers or champion-attractors. Ie, having a city with an adventurer's inn gives a chance of random quests and champions appearing
edit2: city improvements that reduce the cost of gildar in the shop
Edit3: The point here is NOT to swamp the user with twenty more buildings that make you go SIGH, even more to place. These options would REPLACE current improvements. So instead of 8 buildings that increase food from grain, you have 2 or 3 and get something else from this list instead.