Hi Gavin - FWIW, I recently re-discovered opmac.tex, written by Petr Olsak, which has support for a number of the usual free font families. It stays close to plain, so might be plausibly adaptable. I admit I haven't looked at the code, though. Just thought I'd pass on.
It's distributed as part of Petr's csplain, but I believe is essentially standalone functionality. https://ctan.org/pkg/csplain Best, Karl
