No function - i don't even have a macro for this, but it would be possible - the macro would need to find the contact then update it.
Did you try enabling the duplicate contact checker and importing? I'm not exactly sure how it would handle it if the contact only has a name and birthdate though. (Add a category to existing contacts or to the csv before importing so you can easily see which are the birthdate only contacts.)
Another method is use a list view (like Phone list) - enable in-cell editing then add the birthday field to the view. It has a date picker, but it's faster to type the date - you can use 1/1/67 format. It's faster than opening each contact and depending on how many you have, it might be faster than the next method.
If you haven't added attachments to notes or use contact photos*** you can export contacts to csv.
Sort both sheets by name then copy the birthday sheet columns into the exported sheet - assuming you have just name and date columns in the birthday sheet, I'd insert them in column A/b/c and shift the export columns right. Eyeball the names and shift the fields down as needed (you can delete the rows that don't have b-dates).
When finished, copy the date column and paste into the correct export column, delete the extra columns you added. If you don't use categories, add a category so you can identify the imported contacts. If you use categories, add something to the User1 field.
Then import. You'll probably want the duplicate checker off - you'll be asked for each contact otherwise but you could choose Update all. If you don't use the duplicate checker you can spot check a few and compare to the original contacts - when you are satisfied, delete the originals (group by categories or user1). (I recommend waiting at least 2 weeks.)
***If you do use contact photos, i have a macro at slipstick.com that will save contact photos to the hard drive and one that will add contact photos from the hard drive.