Maybe the battery is damaged? Try a new battery. Have you tried charging via the USB cable but connected to an adapter in the wall? Or even to a car charger?
I've tried a car charger, same thing happens there. Sometimes it charges, sometimes it doesn't.
I've tried charging through USB cable to a wall adapter but that was a while back, might have been before it started happening.
