Honestly this has nothing to do with your phone, it has to do with what you are running most likely. Apps are often the culprit and you should check the sync settings in your apps to see what there update frequencies are. Also if you are using a battery app or task killer in froyo, KNOCK IT OFF!!! They are not only not needed because froyos memory management is top notch, but they will also kill your battery. So take a close look at what apps you are running as 90% of the time this is the culprit.
I used death2alls method to get my phone back to v6 and I get anywhere from 14-22 hours on my battery depending on my usage and I am running Velocity 1.0 and am oc'd to 787. So this is not likely the issue either.
50% bug is gone in froyo but i did notice that if you go into the phones testing menu *#*#4636#*#* there are a few things you need to check.
1. Make sure under "Phone Information" you change the preferred network type from CDMA auto (PRL) to GSM/CDMA auto (PRL). This for some reason still makes a big difference even in froyo with battery life. It has to do with how your phone handles searching for a network. This setting does not always stick so i check once or twice a week or when i notice my battery not performing as normal.
2. Under the same testing menu check the "Battery Information" if it reports battery health as good, your battery health is good. Makes sense right? If it reports something else, you may want to look into having your battery being replaced.
3. Most likely if your phone is charging slow it is a cable issue. Also if you are using USB to charge, it will take forever. Plugged into the wall, my phone will charge in under 2 hours from empty to completely full. But 4-6 hours using USB. If you have diagnosed everything else and still having problems, replace your cable. Would hate to buy a new battery and find out it was the cable.
Hope this helps clear some things up for you.