So I've found various things asserting that you sometimes need a high voltage programmer. I saw one post (sadly, I can't remember where) asserting that all the advice saying you needed a high-voltage programmer for fuses was out of date, because the fuses are now resettable normally.
A bit of experimentation confirms that if I have a chip which is fused for an external clock, I can access it with avrdude as long as I provide an external clock, even if the clock is the wrong speed, up to a point. (Specifically, a 328p taken from an Arduino, with a 20MHz clock because I apparently do not actually own a single 16MHz clock that's not soldered into an Arduino.)
My *guess* would be that the remaining issue would be cases where, for instance, the reset pin is disabled in the fuses. Which I am not immediately planning to do. But I am not sure, and have found conflicting data.
I'm also not sure whether the "high voltage programmer" is actually doing anything more than hooking up regular ICSP pins and also a 12-volt signal to the RESET pin. At least some schematics I've looked at seem like that's all they're actually doing.