In fact, Jack can & does die. He just doesn't stay dead.
As the Doctor explained to him in "Utopia", when Rose (as the Bad Wolf) brought Jack back to life in "The Parting of the Ways", her inexperience meant that she brought him back "for all time", instead of just once. Basically, Rose didn't know her own strength & overdid it quite drastically. The Doctor told Jack that this had made him a fixed point in time, which is how Jack describes his immortality to others (e.g., Angelo). We've seen that it's not completely impossible to change a fixed point in time, just very difficult and very dangerous (e.g., "The Wedding of River Song").
We've also seen that it's often possible to "cheat". Most blatantly, there was a way for the Doctor to survive despite the Silence seeing him fatally shot at Lake Silencio without breaking the fixed point -- the Silence actually saw the Doctor in the Teselecta when it was shot. So there may be ways that Jack could be killed despite his being alive for all time being a fixed point. It's even possible that Miracle Day would count as such a trick if they'd successfully killed Jack, but since they didn't, we don't know.