Yo tengo el mismo problema que he resuelto parcialmente.
Además, coincido con confar en que sense es lo que diferencia a HTC. Podía haber conseguido un GalaxyS con Android nativo y su look iPhone, y preferí un HTC HD2 WM6.5 con la única intención de migrarlo a Android (y eso que cuando lo compré aún andábamos con las builds en SD).
Aquí muchos llevamos instalados CurrentWidget, que te muestra en pantalla el consumo instantáneo, pero también, te permite guardar un archivo log con la evolución temporal.
Las últimas ROMs consiguen consumos instantáneos bajos, hasta 2mA (alguien habla por ahí de 1mA, yo nunca lo he obtenido). Pero echando un ojo a los archivos log, se ve cómo la sincronización de datos hace que cada poco tiempo haya picos en el consumo, y la batería al final termina durando algo menos de un día.
Buscando por ahí encontré JuiceDefender. Es una aplicación que desconecta las conexiones de datos si el terminal pasa a modo reposo, y sólo las activa cada cierto tiempo (15, 30, 60min.) configurable. La versión beta no desactiva la conexión WiFi, esta opción está sólo disponible con la extensión UltimateJuice (se instala sobre JuiceDefender beta), que habilita esta opción.
Puedes probar JuiceDefender a ver cómo te va (deshabilitando la conexión WiFi para evitar que te falseen los resultados). Yo he conseguido 1÷2% de caída a la hora.
Pero de donde no hay, no podemos sacar. Y es que en cuanto empieces a trastear con el teléfono (juegos, videos,..) te quedas sin batería. La pantalla consume bastante, y la batería es pequeña.