First off, check your batteries for oxidation spots. That gave me the same issue with my RS 200629/Sangean ATS505. Secondly, check your battery terminals on the DX-398 for oxidation. I had a spot that was on the positive terminal plate, inside the compartment, and the corrosion / oxidation was hard to see. Cleaning it up fixed the problem.
Lastly, if you feel comfortable taking the back off, check the solder point where the negative terminal spring is soldered to the main PCB. That solder pad can weaken slightly after years of use -- at least it did with mine. Adding some solder and re-heating the joint fixed that problem, which occurred in my DX-398 in 2012 or so. No problems with that terminal since.
No idea on how to fix or replace the speaker. I use headphones exclusively with my DX-398.
Good luck. Hopefully someone else can come up with some repair ideas for you. If there is an electronics repair shop in your area, they might be able to fix the radio's power problem, especially if you can provide them with a schematic.