I'm not sure that I understand what your end goal is. This is the kind of stuff where a lot of the times, people new to 3D transformations don't really know what they want.
However, if you say something like, "Being able to animate the origin of a bone would solve this," yeah, you can do that. In a couple of different ways.
First, a pivot constraint:
Notice the bone constraint settings, notice the transformation (on sidebar) of the bone. The empty, which is being used as the pivot point, is at world origin with no rotation or scale. You can move the empty and rotation will be reinterpreted around the empty, wherever it is.
There's another way you can do the same thing:
Suzanne is parented to "deform", deform is parented to "pivot", pivot is parented to "root". Deform is in same local axes as pivot and has a copy location constraint, all inverted, in local space, targeting pivot. When you move pivot, deform doesn't move. When you rotate pivot, deform rotates about pivot. Note that moving pivot after rotation causes apparent motion in deform, but that's not because you're moving deform, it's because you're reinterpreting your existing rotation about a new pivot point.