I think I figured it out. If an enemy gets hit in the middle of moving from one tile to another, the knockback instantly cancels the movement and they get to make another. Basically, while moving from A to B, they get hit and reset, and try to move from A to B again. However, they count as already being at B, so the passability calculations get mixed up allowing them to move through impassable stuff.
I'm not going to have the rewrite done any time soon, so I'm considering just putting out an update to 2.84 with some bugfixes. Just FYI.