i can almost guarantee you the problem is your battery. i work on blackberries all day long and come across this often. even though your device is taking/holding a charge fine, i can almost guarantee you that if you change the battery out the problem will be solved.
i can also bet that if you look at the battery it will be a little swollen (or maybe a lot)