Most people, to fix the problem, already mentioned using AddTorque() instead Rotate(), but in my opinion Rotate gives a better control and overall feeling, yes there is a bit of stuttering during the rotation but it is negligible.
The primary problem most people have in this lecture using FreezeRotation, is that all other constraints reverts back to false after the method is called.
I found a workaraound using this code, in replace of the “FreezeRotation” one:
Basically this code just flags every constraints that you need for the bug to stop and instantly backs up to the initial state.
Since all the code block is basically called at the same time you won’t notice the tick in the inspector, but you can feel it working by testing it.
If you feel extra fancy or OCD is tingling, you can put the second rigidBody.constraints in the else block of the Rotation method, so it will behave properly in the inspector, heres the example:
Hope i helped someone.