I know you state this occurred after 2.2 update.
But if you have not done so check out the Battery tips page, and use any tips that may assist with longer battery life.
Example: If you have no 3G in the area you can turn off 3G on the iPhone and increase battery life
If you do not mind checking email manually, you can set Fetch Data to Manual check everything. Thus allowing better battery life. Cater it to your actual needs and usage
http://www.apple.com/batteries/iphone.html
Make sure when you are ready to take iPhone off the charger, that there is a socket plug inside the battery on top right hand corner of iphone
You may also want to try a basic reboot of the iphone and then full charge and test, ensure the PC/Mac does not go into sleep mode if you use it to charge, as this does power down the USB ports in most cases.
If needed as a last option you can restore iPhone.
Backing Up, updating, and restoring your iPhone and iPod touch software
http://support.apple.com/kb/HT1414
iPhone and iPod touch: Minimum system requirements
http://support.apple.com/kb/TS1323