Just curious, is this working as intended or do you have any plans to address this?
The engine is working as intended, there is no direct bug.
The situation is a result of using non-vanilla user options (e.g. auto-end battle), heavy modding (high stun regen, high smoke vulnerability) and map being both on fire and covered in smoke

It could theoretically happen in OXC/xcom1 too, but it is a trillion times less likely.
There are several naive workarounds/hacks for this... but they all lead to other (sometimes even more serious) side effects... I won't go into details, I would need to explain too much.
The only remaining thing I am considering is redefining how the "Auto-end battle" option works, because it actually doesn't end the battle, it just ends the turn.
Which is not in line with its description:
STR_BATTLEAUTOEND: "Auto-end battle"
STR_BATTLEAUTOEND_DESC: "Battles automatically end when the last living enemy is neutralized."
What happens -- in normal case -- is:
1. Game detects no remaining aliens and requests end of player turn (same as if you clicked on End Turn button yourself)
2. Grenades explode
3. Unit stats (e.g. HP, stun, morale, etc.) get updated
4. Fatal wounds happen, units burn if on fire
5. Environmental conditions get applied (OXCE only)
6. Alien turn starts -- but ends immediately because there is no standing alien -- in normal case
7. Battle ends
In our case, all that happens too, but continues even further because 1 alien managed to stand up in the meantime...
If we would change the implementation of that user option from "end turn" to "end battle"... this would solve the issue.
But what is not clear is WHEN to end the battle...
... after point 1?
... after point 2?
... after point 5?
... somewhere else?
For example I think grenades in point 2 should still explode... but fatal wounds in point 4 should not happen anymore.
And here's the problem... everyone will have a different opinion... and there is no reference point in OG to compare against (since OG didn't have this feature at all).