Pawn movement being odd when Z axis position isnt locked in constraints

I’ve created a pawn which has the ability to move around freely. However, when the lock Z axis position constraint isnt enabled, a “slingshot” kind of effect occurs, where the longer you are moving in any given direction, when you let go of a movement key, the pawn gets launched back, all the while slowing you down the longer you hold the movement key.
The same goes for its rotation, bound to mouse movement.

A video demonstrating the effect:

Thanks in advance