I don't necessarily see what you mean with the video.
Based on your movement code I can however see that you won't be getting buttery smooth movements.
The movement is directly tied to the previous frame time (dt), which is "good enough" for some games, but won't provide the smoothest of movements.
Our eyes & brain are really sensitive to even the slightest mismatch in distance over time. So you get the different variables, from inconsistent frame rate, to inconsistently calculated distance and the mix of the two, on which frame, what position is rendered.
What you instead want is to have a fix timestep for your physics calculation, so the distance is calculated accurately and consistent over time. Meaning you have to separate the rendering and physics.
There a great and famous post that explains it in details:
https://gafferongames.com/post/fix_your_timestep/Note also the section about interpolation, that's what gives the best smoothness.