Lets get back to gameplay for second because everyone wants to make the game historically accurate. If you want historical accuracy, read a history book. Playing a game means making your own history not doing it like the generals of old. It would suck if you were play napoleon and you had no choice but to play out the Battle of Waterloo historically accurate
Seriously, what do you use the SOD for? A massive attack or A massive defense. Side benefits include quelling massive civil disobedience but that's minor.
Now lets think about this. I have a city I want to attack. You want to defend this city? Optimally, this is going to be a SOD showdown. Whoever can make the best units in the game, make the most number of them, and get them to the to the area is going to win. That always was and always will be the nature of Civ.
You can come up with a lot of gameplay rules to manage SODs, but lets face it, given the entire design of the game, SODs are probably the most fair. Why? Because all things considered when it's my SOD vs. your SOD, the bigger and better SOD wins. If you start creating tile limits, you not only create a myriad of scenarios where this could become very unfair for one side or another, but you also add a whole extra level of complexity. The game already requires a large amount of knowledge, lets not get insane!
For example, say you put a maximum of 10 units per title. Well, that makes defending a 1 square unit harder because the attacker can come at you from all sides with multiple 10 unit stacks. Yes, the scenario we are looking at would be attacking a city. So what now? Make the stacks for a city unlimited? Can't do that, as it will make it nearly impossible to take a city with a SOD on it since you can't put enough units up to the city. Make the stack of a city higher but not unlimited may help. However, stacks would be linked to tiles, and tile placement is random. In terms of gameplay you are going to end up with a lot of situations were someone is going to be treated very unfairly by the terrain tile selection, and what is going to happen? They will say it's not historically accurate. And they will be right.
Frankly, if I have to go up against a 50 unit SOD, here's what I see happening:
1) If the stack is larger than my combined armies, I'm going to die. I didn't produce enough units.
2) If the stack is equal, I'll use a few tactics, hit them with artillery and attack before they get me.
3) If the number of units is lower than mine, or the tech level of the units is low, I will crush them with my superior units that can blitz attack and shell them with artillery.
I'm not really sure I can see what's so unfair about that. SODs sound cheezy, but they aren't unfair, and I never quite got the big deal about them.