Very nice. I'm up to part 2 (https://yingtongli.me/blog/2021/08/29/drm5-2.html) and I had a thought.
The SEH pattern (PUSH 32bit address then RET) should be identifiable with a plugin, and a code flow override should fix the decompilation.
I wonder, did you try this, and did it help fix the Ghidra decompilation?