How can I alternate rotating a bone and its associated controls around its tail and its head?
I use an IK constraint on your yellow colored bone and make a control bone for it that shares the location and size with the hand Bone (B in your drawing) but other than the hand bone it's not connected and not even parented to the IK Bone. On the Hand Bone I use a copy rotation constraint to copy the rotation of the control bone. If you do it that way you could set your cursor everywhere you want and transform the control bone around it.

EDIT:

you could also add another bone at the tip and parent the control bone to it to have controls at both positions