Theres a simple solution here. Permanent death (no injury) as a unit trait needs to be completely removed from the game. Its such a ridiculously huge downside that it ruins the game for people trying to use those units. Lich literally just does not use undead since they are massive garbage and always die, and dwarf can't enjoy the game fully in fear of losing mechs. Mechs at least don't die 100% of the time like gold melee skeles would, but its still a massive loss when they do. As a baseline trait, this has no place in the game as the units are way too expensive to replace, so people just never take risks or avoid the units all together. Look at lich. They use their only 2 non-undead units as their entire army. Lucky for them, they are two of the best units in the game.
You compare dwarf to lich and mention how undead is garbage...so why not say the same about mechs being garbage and just use dwarf human units: miners, rockeeters and snipers? I don't understand your point
My point is in the first two sentences: that 'no injury' is a ridiculous trait that should simply not exist for any race or unit. Undead units turn out to be a lot worse than mech units because 2 of the 3 undead units are light armor, and the third is a low HP melee unit. Basically, all of the undead units are very likely to die in a duel for example. Its still awful to have perma death as a trait on mechs, but they are less likely to die than undead, so you can at least afford to use them. Lich can't run undead at all, even for questing, without having to take major extra care in keeping them alive.
As I said, its a horrible trait for both units and I think it should be completely removed from the game.