There are a few things to consider here.
First, the facts
Fact: 3G radios are far more power hungry than 2G radios
Fact: While there have been audio optimizations on the iPhone, 3G calls also sound better/different becaues 3G/WCDMA uses code division and 2G/GSM uses time/frequency division. Different technologies, very different ways of communicating with towers.
Fact: The Microsoft Activesync OTA wireless sync protocol with Exchange is data intensive and generally far less efficient than that of Blackberry devices.
Fact: If you sync with Exchange, your data utilization is different depending on whether you're Exchange 2007 or Exchange 2003 (they made optimizations in 2007 specifically to address the data use)
Fact: If you are a push user, your phone is using data all the time.
Add it together, and it really goes back to a combination of Push and 3G that suck you dry on battery life.
If you're using a lot of minutes talking, you're going to burn up your battery faster on a 3G network than a 2G network. Likewise with Push email, or just using a lot of data.
A little more about Push
Whether it's Mobile Me, ActiveSync, Blackberry BES/BIS, your phone is sending constant status notifications to your mail server. Your phone pings out to the server, and depending on whether the connection is alive or not, the phone and the server will resync and exchange updates with each other.
Remember that Exchange Activesync is very "chatty" (read: uses a lot of data to give you that "push"). It would be like having someone using your phone constantly while it's sitting in your pocket.
Per Microsoft:
In a 3G network, you're taxing the radio in the phone, asking it to use a lot of energy to keep your mailbox in sync. That "long-standing HTTPS request" would be like you firing up Mobile Safari and trying to load a page that never fully loads, but keeps Safari holding that connection.
It does sounds like a few folks here might have defective batteries, but every 3G phone I've owned to-date has been a painful compromise. Fast network + push = barely enough charge to get through the day. Slow network + push = 1-2 days of battery life.
Non-3G Blackberries with push enabled will run for 3-4 days at a time. I suspect the new 3G Blackberry Bold will also suffer from the same challenges. You just can't have it both ways yet.
No short term solutions... any long term ones?
Short of returning your phone and voting with your wallet, there are only a 2 long term solutions I can think of (for the right enterprising individual):
1. Modify the iPhone OS to use 2G when it's "idle" or managing push email. Add an option to enable 3G (when available) when (a) phone is in use, (b) browser is in use, (c) downloading songs/apps (maybe these can be checkboxes).
2. Start an aftermarket business modifying iPhones to accept "extended" batteries. Ship your 3G iphone to some 16 year old with a Dremel, and he can make you a battery door.
-Al