From my own experience, resolving place names only, I get the same sync error you described; albeit randomly. It will make some or most of the changes but something happens at the last step; if you try to sync again, FTM tries to upload all the changes anew; you end up with duplicate information for those places. Compacting the database first does nothing to fix this "glitch".
So, my only way to prevent all the duplication is to use Ancestry as my "main" tree and FTM as the "local" version. Once the sync error occurs there is no way to recover from it other than to redownload the tree from Ancestry. Have not tried this in reverse (re-upload the tree to Ancestry) so I don't know if this is the "best" way or not. It does eliminate the possibility of 100s of duplicate place information. And some of the changes were made properly so it's what I do. Open to other suggestions.
1) Does seem to happen more with more changes to places; greater than 100 increases the chances of failure. I've been able to duplicate error with less changes depending on what exactly I'm changing on the FTM side, so that's not a hard and fast rule.
2) Ignoring a Place Name will cause every instance of that name to be rewritten even though no change was made to the actual place name. That can be a lot of changes that FTM tries to rewrite on Ancestry side and increases the chance of a sync error.
3) If you open a new window to resolve all place names and for example move part of that place name to "Place Detail (historical name, address, church, cemetery, etc.)" that will increase the chance of sync error. Accepting a "suggested place name" before and after performing this operation, it seems to accept the change more often without a sync error. Not foolproof but seems to help. Also doing this directly from the list without opening the new window also seems to error less. BTW, I had previously assumed that doing this moved the Place Detail to "description" field but that's not the behavior. Just sets the accepted flag for that place (Ignore).
4) The bigger the tree the more chances for these errors to occur. My +/-500 person trees do not have these issues as much as my 25,000 person tree. Granted more potential changes but i can duplicate the error on just one "ignore" change on the big tree. Is it related to the number of "unresolved" places?
I will continue to use FTM to resolve place names; just the easiest way to make bulk changes. YMMV. Hopefully it gets fixed!!