The solution to these problems is NOT 1upt.
First, the solution to the "Stack" issue would be to give the players and AI more incentive to take territory. This could mean that above and beyond destroying improvements, you could kill the enemy's population or even shift the border. Give players ways to interact with the territory that accomplish war aims. Otherwise no matter what you do people are just going to try to throw as many units as possible at cities. Even with 1upt they still do this, the game system is just artificially designed to make this impossible.
You've brought up some very good points.
Let's have a look at the most simple form of attack (please note that for simplicity reasons I will make some asusmptions about the average damage done; furthermore, I assume that there aren't any obstacles in your units' way): your units vs an enemy city.
The city's strength is 20 (no units inside, no walls).
Let us assume that you have archers (doing 2 damage points) and melee units (doing 4 damage points).
To get that city as quickly as possible, you would have to have any combination between 8 archers and 1 melee unit and 0 archers and 5 melee units.
Since the city will fire at some of your units, you should have more than the mentioned minimum numbers (units deal less damage when wounded and not having Bushido). Furthermore, you have to expect enemy counter attacks, which may damage or even kill some of your units.
So, the minimum number of units under the best possible conditions is 5 (just the melees) to take a city in one turn.
Less units means more time needed to get that city, which in turn means more reaction time for your opponent (buying a garrison unit, buying a wall, bringing in reinforcments).
The more units you can allocate to the siege, the higher your chance to get the city early.
And this leads to a dilemma: either you have to accept to have to attack that city for several rounds, or you have to create a local carpet of doom.
Now, some people will say there wouldn't be any fun in maybe losing a city in just one turn. On the other hand, that's the reward for the attacker to be able to collect an army and send it against an undefended city (note, that my calculation would change in case of defenses). And 5 or even more units clearly count as an army in Civ5 terms.
tl;dr:
More units is a necessity in Civ5 as well.
Everything else will just lead to repetition of individual attack moves without adding anything to the game experience.
As Civ games are about to create empires, economic strength is what it is all about. Economical strength should give you advantages in terms of allocating troops and sending them into a certain area.
Civ5 by the concept of 1upt puts limitations on your ability to make proper use of such an economic strength.
Literally, you are penalized for having done everything right.