There is unfortunately no way to test the control panel apart from connecting it to a Roomba motherboard. The fact that you mention that it was hard to press for a few months before it stopped working, makes us believe that the problem does come from the control panel
As for the battery, if it was removed from the robot while the robot was being cleaned and the Roomba's
charging system was reset, it is normal that it charged for this long. A normal refresh charge usually takes about 16 hours. The robot goes into refresh charge when it feels that the battery needs it depending on its charge level.