It seems everyone knows the truth in their own lives but the heart always likes to fight the hardest battles. The heart always looks for reasons beyond logic and understanding, so in the end Acceptance of the truth, takes time.
The person might not be who you thought they were; might have changed for the worse; but in the memories, they will always be the person you loved. it's ok to cherish those memories. You dont have to allow that person in your life now.
Never leave the person who understand you more than anyone else. Someone who you can talk to about everything and will stand next to you even with your unwanted attitudes. Treasure the one that accepts and loves every bit of you.