A possible alternative to killing off opposing heroes...
Maybe instead of being able to kill off opposing side's heroes, which results in fewer heroes and also getting high-tier equipment early, the solution could be that you could hire opposing side's heroes but at 50% extra cost (and possibly higher upkeep costs if this is implemented). This would represent that it is still possible to cross the factional boundary (Empires/Kingdoms) just that it is harder to do so (just like in diplomacy between different leaders). And it would prevent being able to kill off heroes - you could either afford to hire the hero (but because of the 50% extra cost you would be more likely to hire your own heroes) or you would have to leave them alone.
What do you think?