These are indeed Vanilla merchants, so this needs to happen as cleanly as possible, therefore directly modifying actors, lists or factions is out of the question. The whole purpose of the Quest Alias approach is to avoid incompatibilities with vanilla merchants/factions.
I'm good with a scripted approach - just update the vendor every few days - but again, its a matter of how to do this cleanly, and what to actually call the update event on. The quest this happens from is set to fire once - is there a way to cause the quest to reset and start over, say, every three days?
Use a script that is registered to update every 72 hours game time (or however long you want to wait). When that time elapses, Stop-Start the quest.
Just keep in mind that when you do this, all of the scripts you attach to that quest will be reset. The advantage is that using this approach will fire a fresh OnInit Event to your quest, so you can reset things from there, but any non-Global variables in your scripts you may have changed over the course of the mod's operation will be lost.
And if you are using Aliases to provide the items, anything that is added via the Inventory window is stuck with them permanently, no amount of quest resets or container respawns will dislodge the items you gave them (since the intention was to hand out Quest Items through that window, this was done that way to prevent the item from vanishing and breaking the quest). You'll need to manually remove whatever you gave them before restocking them if you are going about things that way.