@DH - I have got to the bottom of this issue, and frankly I think it's intractable (or at least HIGHLY risky in terms of the magnitude of change required, to the extent that it's probably not justified). I can offer you a workaround to fix your game, but first here is the explanation:
The game maintains aggregates of all modifiers that apply to the player, on the CvPlayer object (commerce mods, happyness mods, etc.) and these include the aggregate iCityLimit (can have components from multiple civics in principal, or even from other sources, though currently no XML tags exist to allow us to define those additional limits from things such as buildings, though the underlying capability is there).
When a game is saved the current values on the CvPlayer object are serialised, with no way to tell where the individual contributors of each serialised aggregate value come from. Thus when the game is loaded the aggregate (3 in this case) is restored, even though its 'source' has gone. It's not feasible for the load to 'repair' this without major changes (don't serialise ANY of this, but instead recalculate it from scratch each load). I am of the view that such a reworking WOULD actually be desirable, but there are huge numbers of these aggregate values (on players and cities), so it would be a big job with a high risk of bug introduction, so I don't think it is currently justified.
As to a workaround, here is a way out (it'll cost you a few turns of anarchy though):
1) Put the iCityLimit back temporarily
2) Load the game
3) Switch out of the chiefdom civic (if necessary change the despotism definition so you can temporarily)
4) Save the game
5) Edit the assets back to remove the iCityLimit again
6) Load the game and switch back to chiefdom
Essentially the key part is switching out of the civic while it has the iCityLimit of 3 on it (which will remove the contribution of 3 from the aggregate). Equally you could (I think - haven't actually TRIED this) define another civic as having a limit of -3 (!) and switching INTO that then saving (and then taking the -3 limit off before reloading).
@Afforess and modders generally - what do you guys think about the radical (potential) change of not serialising any of the aggregate values on players and cities, but instead recalculating on load?? This does have benefits:
- Prevents load-across-asset-change issues like DH's
- Would cause loads to 'fix' bugs that cause the aggregates to get out of step (I'm pretty sure we have some in this category)
- Would (slightly) reduce save sizes
The downside is that it would be a risky (and fairly complex) change...?