He didn’t lie to her because he didn’t trust her with the truth. He didn’t lie to her to protect himself, or to prevent her from leaving him.
He lied to her to protect her. Ellie had a bad case of survivor’s guilt. She would have willingly given her life for a slim chance of a vaccine, but not because she agreed with the cause. She would have done it because she feels compelled to by her guilt. By lying to her, and she knows it, Joel lifted a huge weight for her. He said “You don’t have to make that decision. You don’t have to give your life. Your life matters the most. You deserve to live, and most importantly, I need you.”. She knows that. She knows he needs her, but she also knows she needs him. She needs him to protect her from everything, as well as from herself. She needs him to protect her from her guilt.
She didn’t stop trusting him because he lied. On the contrary, she accepted the lie because she trusted him.
She trusted he had made the right decision by saving her. She trusted him to stay by her side. And by committing to his lie, he affirmed that. By committing to his lie, he committed to his decision, and most importantly he committed to her.
She asked him to swear, and he swore.
She held out her hand, and he gripped it tightly. [x]
Right in the feels.