Why the ‘squashed’ sphere wouldn’t rotate is because Blender (and probably 3D Graphics programs in general) use a trick to calculate a sphere: they say, a sphere is an object with a constant distance (called radius) to it’s centre. This works in 99.7% of all cases, but sometimes it fails. The advantage of calculating a sphere this way, completely outweighs the sporadic ‘failures’/bugs.
Say we take a look at point (0, 0, 1)) which lies on a sphere around the Origin with radius 1.
Now scale this point by 7 on the X-axis. Now it is point (0, 0, 7) and it’s distance to the Origin is now 7, meaning that the sphere intersects the Z-axis at (0, 0, 1/7). (Does this still make sense?)
Rotate the point 90° (for simplicity) around the Y-axis and you get (7, 0, 0), but the distance to the Origin is still 7, so the sphere still intersects the Z-axis at (0, 0, 1/7).
In my original explanation I mixed distance to Origin of a point with length of a vector, which makes it more confusing, but it’s all the same in 3D.
I hope this helps, it’s rather difficult to explain 🙂