This is a complex problem. The only solution I have will take a few hours but it works well:
1) HotSync then Hard Reset. Check if ok.
2) Move all files from the Backup directory on the PC to another directory, e.g. Backup2
3) HotSync. Your Datebook and AddressBook data will be back. Check if ok. If not, use dbScan to clean up:
http://www.freewarepalm.com/utilities/dbscan.shtml Check if ok.
4) Move a few files from Backup2 to Backup, then HotSync. Check if ok.
5) Repeat (4) until problems re-appear. Then you will know approx. which files are bad. Delete them from the unit. Load in the remaining files.
If you have done programming, a binary search is faster - in (4), move in half of the files. If problems re-appear, keep working with this group ... So if you had 64 files to look through, you would need <6 cycles to find the bad file.