I have one other recommendation that you may want to try, but first, when I reread this, I didn't see if you indicated whether or not the place where the sync stops is on the same Contact every time? If it is, have you tried deleting that Contact completely?
If all of the above is moot for you, then you might want to pursue this option:
1. Back up your phone to iCloud or iTunes so you can restore it later
2. Erase the device by going to Settings>General>Reset>Erase All Content & Settings
3. Set up the phone but do not restore it from your backup just yet, just sign in to iCloud when prompted, turning on Contacts when prompted
4. See if that has cleared up the issue
If it has, then that points to corruption in either one of your apps or your data, so you won't be able to use that backup. You will have to "manually" restore your device by downloading or syncing your apps, etc. If you have to do this, add your Apps and other media in small groups and to see if you can pinpoint the culprit.
If it hasn't, then follow Steps 1 & 2 above again, and when you get to the point where it asks if you want to restore it from your backup, do so.
Cheers,
GB