In my experience there are two main ways a walking animation can be made - one where the animation itself has NO forward movement (you need to move the character yourself to match the walking speed) or the second way where the walk animation moves the character forward.
It sounds like your anim moves the character forward - but that’s just the animation, not the actual character position. So when the anim stops, the player snaps back to their ‘real’ position.
I think to use that style of anim you’d have to move the character to the new position the instant the anim stops.
But I’m not sure, so far I’ve only worked with the other style - where the anim doesn’t change the characters position - in those cases I have to make sure my Verse code is moving the character at a rate matching the animation.
Hope it helps.