I completely agree about razing cities...and anything else, from forests to camp sites, etc. It all happens instantaneously and without cost. It is less gameplay mechanic and more map editor. It needs to be changed. As you said, razing should take time, at least one season for small sites (such as a patch of forest) and more for cities, and should involve some gildar cost, albeit I would like to see some materials returned in exchange (salvage). In fact, for cities I would like to see a Total War mechanic where when you raze a city, you also loot it and put people to the sword, losing the population.
Another option, because razing can be used to control empire size and Prestige use, if you conquer an unwanted colony, I'd suggest an option to 'puppet' a city. It goes neutral, no longer under your control, but not under the empires that it was either. This wouldn't help you if you conquered a city you didn't want, but it also wouldn't raze it to the ground, giving your opponent (or you) a chance to retake it.
Great idea. It is very similar to the vassal idea that Stardock originally floated for WoM:
"In Elemental, one of your abilities will be the governing ability. The more cities under you control, the more overhead cost there is to run your ever growing kingdom. At some point, it may become advisable to turn some cities into vassals. A vassal state is a city (or group of cities) that is originally founded by the player but has been made independent by that player. It becomes its own independent faction controlled by the AI. Initially, as a vassal, it is allied to you. But being independent, all bets are off of what happens in the future. It may join up with someone else, combine up with other vassals to form a new kingdom, or even go on its own to try to become a major faction in its own right through a path of conquest.
"One could picture a large game where there might be dozens of vassals who form ever changing alliances throughout the game."
Still want to see this one day....