Never thought I'd say this but...
1. Is a bug, not a suggestion.
#5263, to be exact.
The problem is that abandoned shops are
never reclaimed, and eventually, you have entirely abandoned towns even though there are thousands of people theoretically living in town. The historicals all live on top of the castle walls because there is no room anywhere else. The population pool civilians just don't exist outside of the market.
If goblins move into a human civ, they will never starve or die of old age, and you can get cities as they were meant to be: full and bustling and filled with shops. (Not enough simple houses, though...)
2.
Urban sprawl is a modern phenomenon. It is caused by private transportation methods.
The reason cities in the ancient world were built was because all the jobs were concentrated around a small point, and everyone who had to work there (say, the harbor of a port town) had to be within walking distance of the major source of employment. That meant cramming buildings closer and closer together as population density rose.
Urban sprawl came about when things like cars became cheap and widely available. Commutes could suddenly be from much further away, and so the middle class didn't want to live in cramped apartments anymore.
In order to
accurately model cities, we need to have "Job Hotspots", around which the town will actually be formed. Most cities in the ancient world were built on either places of great industrial activity that could not be moved elsewhere (like a particularly valuable mine or quarry), or more likely, upon the crossroads of major trade routes, or where trade routes changed type. (For example, when river barges would have to unload at the mouths of major rivers to move their goods to sea-going vessels for export. Places like London or even New York were started as river-to-ocean port towns.)
Towns could, naturally, have more than one job center, however. A military fort could have plenty of satellite job opportunities regarding smiths, clothing and uniforms, and cooking, brewing, and otherwise servicing the troops, and that fort might be built very near the harbor of a major trade city that is a major trade line. Both would be job centers that buildings would crowd around.
Hamlets, meanwhile, only need to be cloistered close enough to be near the other members of your own village, while also within walking distance of your own fields. Going to town easily would be nice, yes, especially when it's time to take the harvest to the tax collectors and debt collectors, but the key point is that you need to be within walking distance of your job center.