I found the answer to my problem:
After understanding how things works, I popped the trunk and removed the entire filler neck from the car. When I flipped it over, I could clearly see what the problem was.... everything is all busted up in there. The lock spinning freely was unrelated to the cap spinning freely, but everything spinning freely meant nothing was spinning OFF.
I'm going to do a quick repair by epoxy-ing the outer cap (grip) to the inner body (the threaded bit) so at least I have a gas cap... I'll plug the keyhole with something to keep rain and dirt out. That should get it back to functional, and I'll find a real replacement whenever...
In case anyone ever wonders, these are the three plastic parts of the gas cap. This plus a lock cylinder make it work:
This inner bit is the magic... and mine is sad and broken: