Granted, this is with 4.8.2 (where it works perfectly) but I don’t have the time right now to set up a similar system in a 4.9 project to test it. Basically input your current and target rotation (I’m just changing the Yaw in this example) into a Rotator Lerp (Linear interpolation) node and use a Timeline to update the current rotation for the duration of the Timeline.
The entire rotation takes 0.3 seconds, no matter how large the angle is the character needs to rotate (may be too fast for large angles, too slow for small ones). And the linear “curve” ensures that the rotation changes smoothly each tick.
Like I said, I haven’t gotten around to try it in 4.9 yet. However, both the Timeline and the Lerp nodes look the same, so I see no reason why it shouldn’t work.
I’d suggest to replace your current Set Actor Rotation call with a setup like in my screenshot. Before you call the Timeline, call Get Actor Rotation, save that into a Rotator variable. Pass the variable into the Lerp node’s A input and the target rotation into the B input.