Follow-up: I have won the battle, for now. I discovered where Visual Studio stores the original versions of the files used by the add-on, and replaced the original version of qt_vars.targets with my modified one. Now when Visual Studio starts up and the add-on loads, it copies my modified file into the QtMSBuild directory.

Of course, this will only work until the next update of the add-on, but if that has the same bug, I know what to do.

Hah! Take that, Microsoft!