Hi,
I think chawk_man might have the solution.He has plenty of experience.
I just wanted to add that while cleaning your battery connection was a good move, don't forget that the other end, or "engine side" of those cables could need attention too. The positive cable typically connects at the battery isolation switch and, from there, another cable connects to the starter motor.
Those positive cable ends are usually fairly easy to access for periodic cleaning but the ground cable end is bolted down on the engine block and can be difficult to get to. That "main ground" connection almost never gets cleaned but is often the source of problems, especially in marine environments, and should not be ignored.
Those 1-2-BOTH battery switches do go bad and can cause problems like this as well.
There are many tutorials on-line about a handy trouble shooting procedure known as 'Voltage Drop Testing". A volt drop test allows you to use a digital multimeter to "look inside" an electrical wire, cable or component AS THE CIRCUIT IS BEING POWERED to read directly the amount of volts it is consuming. Well worth the time to learn and use in a case like this.
Switches, wires and cables should consume very minimal power in a circuit and connection points should "rob" even less power as electrical current flows.
<0.30v for a switch
<0.20v for a cable
<0.10v for an individual connection
Of course, those numbers are for reference and are general upper limits. They can be variable from circuit to circuit but the closer to 0.00v, the better.
Good luck.