I ran into all these bugs with my BDJ brutal doom submod, and here's how you fix them:
1. Corpses disappearing - Comb through the code of every monster and replace the A_SpawnItems that AREN'T hitboxes with A_SpawnItemEx("[[dead bodies, dying bodies, growing blood pool, ploft, anything that isn't something you can pick up]]",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION). This flag is muy importante. They are disappearing because two monster actors are trying to spawn in the same space. If there isn't enough room for the second actor, it just won't spawn. NOCHECKPOSITION makes it so A_SpawnItemEx doesn't care if things are spawned on top of each other.
2. Gibs blocking lifts - There was a ton of shit I did for this and I can't even remember what specifically made it better. I didn't fix it 100%, but I made it happen a hell of a lot less often. You can just copy all the gore/monster definitions from my BDJ mod if you want.
3. "Sometimes demons without hand can still move to you with dying animation" - I'm not entirely sure what this means, but I'm assuming you meant to say head, and that you were saying sometimes demons will still walk around and shoot at you even after you kill them with a headshot. They're invincible too. If that's not what you meant, it's still a bug you will run into and should fix anyways because it's super simple. This happens because Mark, in his infinite wisdom, put A_Chase("","") in multiple death states for the zombies and a few other bad guys. So, to fix, just ctrl+f A_Chase("","") in each monster definition and delete it. Problem solved.
I know what it's like to trudge through that big mess of BD20 code, and I feel your pain. Nice work on your mod, keep it up!