Personally, I think it's the players fault if you happen to kill those npcs. You probably mentioned the only characters that actually aren't easily replaceable. That aside, it would be cool if there was a "knock-out" mod that allows you to "kill" npcs and if they're essential they'll respawn an ingame day later. Easy fix, right?
Nah, that would totally ruin immersion. If you killed a Jarl, how would you feel if you went back the next day and that same Jarl greets you with a "Greetings, my friend!"? It would be ridiculous.
IRL, all leaders have a replacement ready to take over if that leader dies. Why should a game be any different? Also, it wouldn't even take that much work to make the game like this. The replacement could be a randomly generated NPC with a basic backstory, such as being the previous Jarl/Faction-Leader/Guild-Leaders son/daughter. Then, if you kill that person, the next could be that person's brother/sister, and so on and so forth.
Also, if you were caught doing this, the next leader could send people after you and you could become a fugitive. How intense would that be?