After two iPhone replacements, five Genius bar visits, two new SIM cards, the 2.1 software update, and countless restores, I have identified a relatively simple fix for the following two iPhone problems:
To identify the defective record, I opened the Contacts application, and tapped on the suspected entry -- and alas, it took five to seven seconds to open. I resolved this by simply deleting and re-creating the record, and now it opens quickly (in about one second). Incoming calls from this number no longer hang the phone after dozens of tests.
Another side benefit of identifying and replacing corrupt Contacts record(s) is the elimination of the slow launch and jerky scrolling problems. I have almost 3,000 contacts, and there is no hint of delayed launch or jerkiness after re-creating the bad entry. Bottom line: if your Contacts application launches slowly or exhibits jerky scrolling, you're a potential victim of a corrupt Contacts record.
Finding the record may be tedious, however. If the phone is hanging when certain individuals call, that's easy -- just delete and re-create those specific Contacts records. But if all you have is slow Contacts launch and jerky scrolling, you'll probably have to tap on each of your records, and make certain they open quickly. (There was zero indication of any record corruption in the Mac's Address Book application.)
Mac OS X Hints
http://hints.macworld.com/article.php?story=200809141152015