When I snap a curve's vertex to the 3D cursor the handles disappear
Blender treats a curve point as 3 separate elements: the central control point, the left handle and the right handle. This means that when you choose Selection to Cursor, each individual element will be snapped to the cursor, essentially putting the two handles and the control point into the exact same location. 

As both the handles and the control point are at the same location the control point can no longer be rotated or scaled as it is the distance between the control point and the handles which determines the scale or rotation, and at the moment, there is none.

The handles are still there. If you click multiple times on the control point after it has been snapped to the location and press G you will eventually select a handle and be able to move it as normal.

As you mention, pressing V twice solves this as it tells blender to change the handle type of the point, which recalculates the handles at the new location.

To avoid this, in future you can choose Shift+S> Selection to Cursor (Offset), which will instead treat the selection as a single element and move the control point and handles but keep the distance (offset) between them.