The problem is that for some reason you find a lot duplicates of your contacts, and even duplicates of duplicates sometimes! This is probably happening if you tag people in different Picasa installations or from the web and from the PC client. I hate this kind of mess, so I spent my afternoon looking for a solution, here's what I came up with (tested with Picasa 3.9).
0 - Look for duplicates in your contacts
The first thing you should do is to clean your Google contact list from duplicates. Simply go to Google Contacts and choose More > Merge Contacts, this option will show you couples of possible contact duplicates, giving you the possibility to merge them. Clean your contact list from all duplicates and go on...
More information on this step here.
1 - Add an email address to all your contacts
Part of the problem seems to be related to contacts that doesn't have an associated email address, so the first thing I've done is to set to every contact in your Google Contacts page an email address. If you haven't got the real email address of one of your contacts just use a fake one. I've used the format <name>.<surname>@fake.com, just to remember that is not the real address (I've also set a custom label named Fake to all the fake addresses).
2 - Sync your Picasa contact list with Google
Launch your Picasa installation (if you haven't got the latest version update it first!) and open the People Manager (Tools>People manager...). Now sync your Picasa contacts with the Google ones selecting Update.
(Sorry, I've got the italian version)
Wait until the sync is done, then Picasa could start syncing photo tags, let him finish before going on.
3 - Find duplicates on the Picasa contact list
Ok, now with a lot of patience look in the Picasa contact list for duplicates and take note of all of them. Where possible you can also delete some of the duplicates directly from this list (delete the ones with less associated photos). You could find less duplicates than the ones listed in people management, I still have to understand why...
4 - Remove duplicates from Picasa contact list
Close Picasa and open with a text editor (if you haven't got one I suggest Geany) the Picasa contacts.xml file from location C:\Users\<username>\AppData\Local\Google\Picasa2\contacts, this is the file where Picasa stores it's contact list. Make a copy of that file and store it somewhere, just in case something goes wrong. Now take your duplicates list and find all non necessary entries in the list into the XML file (Ctrl + F is your friend...). Before deleting them look which one is the one to keep! Delete the ones without email addresses, or with less information.
5 - Keep it clean
Open Picasa again and check the result, you shouldn't have duplicates anymore. Now, every time you've got to add a new person don't do it from Picasa! Open your Google Contacts page and add it (specifing an email address), then sync your Picasa contact list with Google and use the synced contact for assigning new tags.
6 - Tough ones
Despite all the work we've done some duplicates could still be there. Well, find these contacts and select all the photos associated to them and delete the associated face tags, in this way you'll have duplicates in your Picasa contact list, but they won't show in the people albums.
Hope this helps! Let me know!
2013-05-03 - Added steps 0 and 6.