** If you are in a rush, scroll down to see the solution that worked for me **
I started having this issue with my iPhone 3GS running iOS 5.0.1 after I enabled the option to sync photos. After reading the posts here and in another thread, I was convinced that it had something to do with the voice memos as I noticed that my voice memos were being duplicated in the voice memos app. However, even after deleting all of the voice memos from my iPhone, I still had this syncing problem. I then noticed that in iTunes on the left side under Devices -> <device name> -> Voice Memos, there were two voice memos showing up even though I had deleted these from my iPhone. Strangely, I could even play these back in iTunes. That told me that something was not right. In addition, there was a book showing up under Books even though I had deleted all books from the iBooks app.
By enabling the "manually manage music and videos" option from the device summary page, I was able to delete the two voice memos and book. However, doing this did not fix the syncing problem.
I tried various other workarounds mentioned in this thread, short of doing a restore, all without success. I was about to give up and do a restore when...
** Solution that worked for me **
I came across this page http://apple.stackexchange.com/questions/8758/why-is-itunes-duplicating-my-voice -memos and it mentioned using Phone Disk (http://www.macroplant.com/phonedisk/) to remove voice memos from the iPhone file system.
Using Phone Disk I browsed to the Recordings directory on my iPhone and I could see a bunch of .m4a files for the voice memos (including the duplicates), even though I had previously deleted these memos from the Voice Memos app. So I deleted everything under the Recordings directory. I also deleted everything under the Books directory for good measure. After doing this, my iPhone syncs normally again!
Anyways, I hope this helps those of you who haven't been able to resolve this issue and who do not want to do a restore. Of course, it goes without saying that you should make backups (by copying files to your machine) before deleting anything.