I agree that this world would stay open (if it was a money maker) even if there was only one alliance left and they spent all their time farming. Having said that:
The above argument is a good example of a pretty reasonable looking argument with arithmetic that is, on its face, compelling ("My God man...1000+ cities per player? - why that defies logic and possibly the very laws of Newtonian physics!")
The issue is not the math, it is the faulty premise on which the math rests. We know you can actively farm 20 cities - not easily, but trust me in desperate times I have done it. Looter of the Day generally can be won by farming about 17 cities, give or take. And plenty of players operate 50+ cities, not farming them but scrolling around and doing stuff to all of them in a day.
And that is the flaw in the argument. If you can operate 50 cites you can operate 10,000, because you really only need to look after your 50 most important cities at any one time. The majority of cities would be buried so far within the bowels of your alliance you would forget their names, and probably stop transferring resource after a while.
In fact, it becomes easier to accrue CP as you get bigger, or at least more facile. Because the next city is only 3 pts more than your last one, as you get more cities you are spreading out the 3CP "new city tax' over a larger number of cities. It becomes less of a hassle to balance the resources to hold events, it is more likely that one will have cities that can just build resource in the background to fund events. The fact that the differential is always 3 is to me an huge error in the CP system. The only balance to this is that you have to run through the cities and set up the events, and at some point that might become a barrier. So to a point, it becomes easier to get bigger as you get bigger. But you can, for the reasons described above, operate an unlimited number of cities because you are really only operating a small percentage at any given time.