I was experiencing a very similar problem post 2.1 update. I did not have "push" on and did not use an Exchange server, so the suggestions above did not seem to be related to my situation.
It then dawned on me that I had never power cycled the iPhone since updating. So... I powered down the phone, waited a couple of minutes, then booted it back up. Now it works as good or better than it did before the 2.1 update. It does not get noticeably warm like it did before and the battery is back to normal. (don't have exact life-span numbers, but I notice the better battery life)
Don't know if that will work for everyone having this problem, but it worked for me.