If you are running a custom ROM, check with its makers if there are any known causes for battery drain. Otherwise, (since there are no known issues with stock Android 2.3.7, the battery drain is caused by some app.
Turn off bluetooth and auto sync (leave wifi on), install Watchdog and charge the battery fully, then let your phone idle for a couple of hours. In that time, any apps that misbehave will be listed under the alerts tab of Watchdog. Check that and report here, maybe we can help.
If it does not list any app, try eliminating each of the common culprits for battery drain - social media (older versions of Facebook) and sync apps that constantly use connectivity options, free versions of apps that regularly pull in ads for display, location apps including Google's own reporting service. Uninstall or turn off whichever you can. If ads are an issue, and you are rooted, you can use Adblock.
Also, check for your battery health - if you've been a heavy user for over 2 years, it is likely that the battery has lost much of its original capacity, in which case a battery replacement would be necessary (I know because I have the same problem, and ordered a new battery yesterday). You can find OEM batteries for $30-40 - avoid cheap duplicates, you never know what they could do to your phone.
Settings | About phone | Battery use
first thing in the morning to see what's draining it. – ale Nov 15 '11 at 14:50