Walking along a curve - how to cut out the sliding?

I have a human model who first walks along a straight line covering 80 frames in two repeats of 40 frames each.
I then added a Bezier curve and applied a ‘follow path’ constraint to the character.
I next went to the ‘curve’ Obj data tab (seen as a curve icon) in the properties window down to the Evaluation section. Set total frames as 80 and evaluation for end kframe to 80.
The character does walks roughly along the curve but it’s more like a floating/sliding walk.
Reducing the evauation time to 40 frames (rather than 80) does improve the walk but the sliding persists.
So following David Ward’s tutorial Alien walking along path. I opened the NLA Editor and decreased the scale in Action Clip to 0.8. This speeds up the walk a bit but also automatically reduces the end frame in the Action STRIP (not CLIP) to 32.2.
The walk improves but after frame 32.2 the character just slides along.

SO MY QUESTION: how can one get a proper walk without the sliding? [David’s tutorial doesn’t quite answer this point].
Help will be appreciated.