When you restored your iPhone, did you restore from backup or set it up as a new phone. There could be a corrupt/damaged file on the iPhone that's giving you this issue. If you restored from backup, you may have put the file in question right back on the phone with the backup. So if you haven't already, I'd advise restoring the iPhone and setting it up as a new phone. Further, don't sync anything to the iPhone and see if that helps the situation.
If you're having trouble beyond restoring and setting up as a new phone, you may want to set up a Mac Genius appointment to have the hardware assessed (
http://apple.com/retail) or give AppleCare a call.