Need help with a Water Swimming problem in UNITY!

When I am in the water, the space bar makes my guy rise and the Q button makes my guys sink. When i hit a certain level, my guy cant go up anymore and the same thing when i sink so i dont go out of the map. The problem is that when i am at the top of the water, when i click the “S” which makes your guy go backward or when i click “w” which makes the guy go forward, if i am at a certain angle, my guy just moves out over the water and can keep going. I use a rigid body and force to increase and decrease my characters y location in water. I think the problem is that the force creates a new starting location for my character since he doesnt sink in the water, he stays at the level the force stops at. Is there a way to make my guy fall back to the original level of the ground when i let go of the force?

This wording is so confusing. Can you post the code, so I can try to make sense of what is happening?