also wanted to add a test I did
I have the chain on the small ring and maybe on the 16/17 cog, I position the bike against a wall, front wheel on the wall. crank arm on 3 o'clock position and clip on the pedal, as soon as I push down half of my weight like pedaling forward the chain drop instantly.
The chain really should be engaged on the teeth of the small chainring and not come off regardless of what else might be happening, as long as you aren't moving the chain onto the ring.
The rear derailleur couldn't be doing this, nor really could chain tension or length. And this isn't happening during a shift so as long as the front shifter isn't really pushed against the chain, you can rule out the front shifter.
Long shot is really bad chain line, but even that would be hard to imagine. Are you sure that the chain sat down fully on the small ring and was fully engaged into the teeth? If you were shifting down onto the small ring and it wasn't fully engaging, you could be getting torque at low power but the chain would spin free and likely fall inwards if you put more pressure on it. I might have said a very very badly worn chain but you've addressed that. So I'd set it up and be sure the chain is all the way down onto the ring. It's the only obvious thing I can think of that could be causing your pattern of chain drops. It's not uncommon with that setup for the chain to shift down from the big ring and not seat fully on the small ring. Then that can in turn be caused by front shifter adjustment, by chain line, or a couple common issues. But the chain shouldn't pop off if the ring isn't turning and the chain is fully engaged.