The engine needs 3 things to both run and make full power. What it needs is compression, timed spark ignition (spark happening at the right time) and the proper ratio of fuel to air. When I get engines in the shop that do not make full power, this is what I do to troubleshoot them, I also do it in this specific order in order to both be thorough and keep from making mistakes.
What I start with is engine compression and spark tests.
1. Compression test. You already did this and your numbers are fine.
2. Spark test. The easiest thing to do here is to hook up a timing light to each plug wire one at a time and see if the light flashes or not. Flash means spark, no flash means no spark. No spark can be something as simple as a bad spark plug, that was dropped on the floor before you got it, or a bad plug wire, bad coil or bad CDI. This needs to be checked with either the engine in a test tank and hooked up to a dyno, or with the boat in the water and under a load. If you get no flash/no spark on a cylinder what you would do is swap the plugs first. After that swap the ignition coils and see if the problem follows the coil or not. If it does, there is a bad coil, if it does not, there is a bad CDI box.
3. If compression and spark are good, make sure the fuel filters are all changed.
4. Next is to get a small outboard tank (like a 3 gallon) and fill it up with known new fresh gas and try it. If the engine runs better on the portable tank there is an issue with either the fuel in the boats tank or there is a blockage or air leak in the fuel pickup and related hardware on the boats tank and related lines.
5. If no change, next is to hook up a fuel pressure gauge between the pump and carb. Fuel pressure needs to be in the 3 to 7 psi ballpark at max speed. If it's not, the fuel pump is weak and needs to be changed out.
6. Lastly, if you got this far and the engine STILL is not running correctly, everything else has been ruled out at this point, and the problem is inside of the carb. They are either dirty inside or one of them has a sticking float now allowing fuel into it.
If the troubleshooting is done in that order, and no steps are skipped, the root cause will ultimately be found. Also keep in mind there is always a chance there is more than 1 thing wrong with the engine. So if for example if you pull apart the fuel pump and change the filter inside of it, and it looks nasty but the boat still does not run correctly, try not to get discouraged. The older the boat is the odds of it having more than one problem goes up. I couldn't tell you how many engines I have worked on that have come in and the boat has bad gas in it, all the filters are trashed, the ignition system needs a tune up, and the carb is clogged as well. It definitely does happen.