You could use a USceneComponent as your root component and attach the mesh to it.
Use AActor::AddActorLocalRotation or AActor::SetActorLocalRotation to rotate your mesh about the USceneComponent.
The only tricky part is setting the initial offset from your mesh to your root. I guess you could derive a blueprint just to see what offset values you need. Then go in code and set the initial position of the mesh.
Edit: It would be easier if you could move the pivot for your static mesh, but I’m not sure how to do that. If you figure out how to do that then just make the mesh your root component, the rotations would already be about the pivot.