I guess what’s your problem here is that the client plays the animation (having his location be changed through root motion) but then get’s an update through the server replicating the actor location (which causes the glitchyness).
If you need to have a server authorative I would probably try and animate on the server, replicate the movement only, and multicast simulate the animation with a non root motion version of it. I never tried if this would work.
I’d probably advise you to follow this wiki page:
from what I gathered it’s not replicating the movement but instead replicating all the variables it depends on so the clients can correctly simulate.
Hope I could help you!
Cheers ;D