Instead of rotating the model, rotate the camera to face the sword. This is what the Developer hub viewport article recommends as it is more performant.
To make the camera face the sword you can use CFrame.lookat()
As I don’t know which face is the front of the sword I can’t give an exact solution but it would look something like this.
cam.CFrame = CFrame.lookat((sword.PrimaryPart.CFrame * CFrame.new(-4,0,0)).Position, sword.PrimaryPart.Position)
-- use whatever positioning variable it is for the sword. I just assumed it was a model.
This will position the camera 4 studs away from the sword, facing the swords left side, assuming the side you showed in the screenshot is the left side.
if you wanted to angle the sword you could do this after positioning the camera.
cam.CFrame *= CFrame.angles(0,0,math.rad(15))
This Face Selector plugin will help you tell which face is the left side if needed.
I found out that it was the facing of the object and because the front was the bottom of the handle, it always faces the bottom of the sword. Is there a way to change the facing of the sword to a different side?