What is being suggested here is a cartel. Yes, if one city didn't agree to signing up for the non-aggression agreement at all, they may stand to win, but if everyone agrees on non-aggression, then whomever the eventual winner is wins the deal for much cheaper. Of course, in practice, defining what constitutes aggression and tax cuts would be quite difficult, but in theory players competing in a winner takes all market could still work.
This isn't a prisoner's dilemma, the cities are allowed to talk to each other, and to gang up to punish those who break ranks.
Punish how?
What possible penalty could one city impose on another?
Revival of medieval city-state wars!
Imagine a future where cities go to war with each other to win the favor of massive corporations.
Its lit!
More relevant to the topic under discussion would be a future where cities go to war to keep each other from winning the favor of massive corporations.
Any sort of collusion agreement can have a penalty clause, so presumably punitive damages.
And damages to reputation are also possible.
The only problem is they have nothing to say to each other.
The idea of a "collective bargain" in a "winner takes all" situation doesn't make sense.