Most likely a fuel delivery problem. On the trailer, the engine has basically zero load so running high RPM's requires very little fuel. In the water, the impeller is loaded and so more fuel is required to reach the same RPM's.
Check all the usual stuff: Fuel filters, fuel lines, etc. Since it's a carbed engine, the next step will be to pull and clean/rebuild the carbs. Just before that, you could try some Deep Creep (SeaFoam is a spray can) shot directly into the carb throats to see if that cleans things up. I'd also run a healthy mix of SeaFoam-treated fuel via an external tank to see if a chemical assault will save you from a carb rebuild.
CAUTION #1: Mercury does not recommend running their V6 engines over idle speeds when on a hose. You can push this to ~2000 for short periods, but keep it short. The hose does not provide cooling water to everywhere that normal operation in a lake reaches.
CAUTION #2: If it is a fuel delivery problem, then when you try forcing it to higher RPM's by advancing the throttle you are running the engine very lean. The reason is that you are increasing the airflow through the engine, but the fuel is not also rising, resulting is a lean fuel/air mixture. That's a huge no-no with 2-stroke engines because the fuel+oil mix is where they get their lubrication. Do that for very long and you will have a much bigger problem on your hands. Be careful.
Report back!