I'm thinking that having essence as a thing that is renewed each turn, but spent each turn, might be an answer to city spam.
Make cities take a certain amount of essence a turn to sustain. Bigger cities take more essence per turn. As you level up, you can channel more essence per turn from the land, if you so choose.
Why would this limit city spam?
It would give a strategic option of choosing to remove your essence from a city, allowing it to shrink and (eventually) die out. Populations can only grow when the land is healthy (or corrupted).
The further a city is away from your sov, the more essence it takes to sustain it at that level. You can move your soveriegn, of course, but that changes the flow of essence from the land to your cities.
You still have an essence cost associated with spellcasting, imbuing, etc, but make those single cost things. That way, you can save up essence to do some good magic, but at the expense of your ability to create and grow new cities (for a while). City spam is an early game tactic, that is associated with a land grab; if you slow it down initially, I think you make keep the problem at bay, because the few big cities you create will be drawing all your essence in the late game just to keep them from shrinking.
Anyway, food for thought.
Winni