Input actions (and input in general) only runs on the client, so when you press the button, your client has a different speed than the server, which causes the corrections
It’s generally a not-so-easy problem to solve, because you will have to compromise in some way
The best way would be to implement this through the character movement component in C++ via actual saved moves, but it’s not too easy to set up
But you could set up a GAS backed approach, and leverage the gameplay effect prediction to avoid corrections, although I don’t think this approach can eliminate all issues, especially as latency increases
Otherwise, you could set the IsRunning variable on the server using a Server RPC, and use that to notify the server to also start running, but that will also cause some jitter based on latency