You really don't get it? He's cheating on you. He's acting lovey dovey to placate you while he does whatever he wants when he thinks you won't figure out what's really going on. I know how much you don't want to believe this, but the simplest solution that makes the most sense is the only one that's the truth.
I'm really sorry but if you don't want to marry a man who lies, flirts with waitresses, acts like an oblivious ass when it turns out that his girlfriend is smarter than he gives her credit for... then this isn't the right man for you.
"I get that it doesn't seem like a big deal"
It sounds like a huge deal.
"lieing has been an issue in our relationship before"
Then it's time to leave. No one should have to put up with lying. He's lying because he knows he's doing something that would really hurt you. This means that he would rather play his games at your expense than be an honest and faithful person to you.
He might be cheating but please do not give advice like you are sure. You can't say for certain that he is cheating.
I don't like that he lied but it does not mean he is cheating.