The current method of pressing the button to cycle the rotation axis feels really unintuitive to me - Having something rotate vertically but adjusting with left/right on the joystick just feels wrong.
Instead rather than the current implementation of being able to adjust distance and rotation at the same time, have these separate to allow better control of each individually (even if it's just hold a trigger to enable rotation or something like that). The you could adjust the rotation by just holding the joystick in the desired direction.
Other suggestions that people have made around rotation snapping increments / no-clipping also make sense. Perhaps that should be the default - After all people aren't likely to want a table in mid air at an unusual angle. It's nice to have that fine control but that should optional rather than default in my opinion.