This works in C++ without doing any extra replication. I only have the C++ code but I’m pretty sure everything is exposed in blueprint. This is used in the Shootergame C++ example for the first person aim offsets to replicate. Control rotation does not replicate but view direction is available for a pawn so you work backwards.
const FVector AimDirWS = Character->GetBaseAimRotation().Vector();
const FVector AimDirLS = Character->ActorToWorld().InverseTransformVectorNoScale( AimDirWS );
const FRotator AimRotLS = AimDirLS.Rotation();
Pitch = AimRotLS.Pitch;
Yaw = AimRotLS.Yaw;
Roll = AimRotLS.Roll;