What you do not get is that Trump can not fire Sessions. Firing Sessions puts the rat Rosenstein in charge of DOJ. As bad as Sessions is, Rosenstein would be worse. If he fired Sessions he would have to fire Rosenstein too. If he did that there would be hell to pay and he would be inpreached. Sadly Trump is stuck with the coward Jeff Sessions until after the midterm elections. And maybe until after the 2020 elections. Congress (the Senate) has made it clear they will not confirm anyone as AG if Trump fires Sessions. Checkmate.
Trump could have fired Rosenstein a long time ago.
You summarized it exactly. Trump cannot fire Sessions in a vacuum, and the GOP Permanent Political Class has already told Trump what will happen if he he fires Jeff. It will get ugly, and it could easily get out of hand.