About the fact that it doesn’t happen on other clients, that’s quite normal as you’d have to either do a remote procedure call (RPC) or tick a bunch of booleans somewhere in your actor to replicate your newly set rotation (I haven’t tried it myself but I’d assume that the Character class boolean “ReplicateMovement” should also replicate SetRotation… Probably). Either way, your game cannot guess what change should be replicated and what change shouldn’t, so you have to do something on your end before that happens.
About the sluggish movement, it’s something that I have seem myself too. If you find a solution to your issue, I’d be very interested. My needs were more in regard to a cosmetic perpetual, constant-speed rotation, but the way to do it and the end result are basically the same then your case. So far, the only thing of use that I have found is that the sluggish movement is less visible at slower rotation speeds.