Also, do you use the same animation for forwards and backwards walking? One of the directions seems backwards which can contribute to the sliding.
They use the same animation. The only difference is the algorithm for forward movements and backward movement is the order in which the images are read by the algorithm.
The forward algorithm reads the first image to the last frame. The backward movement reads the last frame until the first frame.
The way I think of the implementation of backward algorithm was pretty much like "rewinding the forward animation" to give it that effect and walking backward.
I might add an actual background tomorrow just to make it easier for you and everyone to see it clearly.