Don't do this. This is a gamey limitation that worsens the overall experience. Snaking is a shitty mechanic, but so is being arbitrarily limited to a certain size. It makes no sense logically that a city could only expand so much, and from a gameplay perspective it tackles the symptoms rather than the problems. Snaking is symptomatic of city design being irrelevant with regards to the city's contents, but not with regards to the worldmap. The "best" solution to the second problem would be to model building productivity in such a way that positioning matters for buildings, encouraging people to think about building positioning in logical ways within the city. Of course, this is of limited feasibility - it would doubtless take a lot of code work to implement, and conveying the requisite information effectively would require reworking the city-building interface. A lazier but still acceptable solution would be to just take control away from the player - the player doesn't decide which tile his new building goes on, so snaking doesn't happen. And since the players can't effect it (and nothing of value is lost), most players won't care.
Another good solution is to look at why players are snaking in the first place - the irrelevance of building placement is why players don't refrain from snaking, this is why they do it in the first place. Players want to be able to block off chokepoints. Make it possible to do that through a mechanic dedicated to that purpose, and snaking won't happen. If players can just build a wall extending from their city to the coast on one side and the mountains on the other, snaking is more or less irrelevant (except with regards to resources, and we have outposts for that) so the problem is more or less gone.
You also say that limited city footprint would encourage specialization by prohibiting taking all good options. I don't think there's a big problem with generalization in the current build, but to the extent that it exists, city generalization is a symptom of insufficient link between buildings and local resources. Although it's possible that no one solution will suffice, a good way to fix the problem is with buildings that effect resource production, such as (for example) doubling a city's crystal or iron or horse production - or make buildings that are advantaged, such as one that gives +1 gold production for every diplomatic capital point that the city generates in a season.
Great points regarding walls and why people build the way they do, Cruxador. I am all in favor of a separate city build screen if it gives us the ability to build fortifications that matter during tactical battles and strategic map movement.
Let a city wall off a peninsula if it is no more than 4 tiles across. I mean you can almost do it with the destroy land spell now if you want.
Let an outpost build a ballista or catapult on top of the keep that exerts a ZOC that prevents neutrals or hostiles from entering w/o proper treaty/tribute or the airspeed velocity of an unladen swallow. (Or attacking the outpost and taking the keep in a special tactical map with walls, moats and vats of boiling oil... {THOSE would be fun techs to research... scaling ladders, flaming arrows, battering rams, training War Trolls or Ogres to destroy walls, a swarm of wall-climbing spiders.})
Great Wall could even be a one per civ or one per world achievement or an Earth spell obtainable via quest or levelling up. Different civs and spell schools could have a myriad of different ways to siege or defend against one:
Earth to Mud (destroys wall)
Water Guardian (takes water from moat and turns it into a powerful elemental)
Flying troops or magic carpets for air mages
Burning walls or moat for fire mages (they already have fireballs offensively) etc.
Thanks for the many updates this weekend!