Before replacing the tank--which I'm guessing won't help--figure out the source.
You say it is only the hot water. Have you heated some cold water to see if it it the heat making it obvious?
- Bail some water straight from the tank. Does it stink?
- Heated it. Does it stink now?
If yes, the smell is in the tank, but that doesn't mean changing the tank will help. Try the same 2 tests with water from the dockside tap. I've been in marinas where the source water was the problem. For that matter, test the water before and after the hose. Let it sit in a gallon jug for several days before testing (in case bacteria in the water are converting sulfate to sulfide).
If it is the dockside water, you have a lifetime of water treatment in front of you. This is not uncommon with high sulfate water.
If those tests pass there are only 2 other possibilities: The lines aren't clean (sounds like they are clean) or there is something electrolytic going on in the water heater (you must get the anode replaced).
Be systematic. Check water at every step, allowing time for bacteria, if present, to do their work.