UPDATE on this case:
The controller kept refusing to charge even after replacing the charge IC twice. The USB tester I have kept indicating only around 60ma, and leaving it charging overnight proved to have no effect either. The controller was still refusing to charge. Reflowing the CPU also didn't do any good.
So I decided to do what I did with another controller I messed with, recently. In summary, I decided to implant a mini charge board in such a way that it would charge the battery in parallel, taking 5v from the USB daughter board to the battery. The result was the expected: the controller worked fine and charged at close to 900ma (through the charging board). I left it charging overnight and by the morning I had 100% charge.
One day after that I dropped it, today, and the controller started showing a red light whenever I connected the USB cable. It also turned off the bluetooth signal every time I plugged the cable, but it would still work through the USB cable. But other than that it was working fine, except that now it was only charging at 300ma.
I decided to open it and saw that one of the cables from the charge board had disconnected (luckily, the ground one), which meant that the 300ma came from the usual charge IC in the controller itself. I took off the charging board, and the controller is now fully working without the foreign board.
With this I'm confirming that the 5v trick works on jdm-040, but I still have no idea why.