Should I leave him?

So I have been with my partner for 2 years and we was trying for a baby with no luck yet. Last Wednesday he stopped out which wasn’t out the ordinary as if he has a drink after work and misses his train he will crash at a mates. Anyway, he came home next day his clothes had been washed and there was a blonde hair on his trousers. I pulled him up on it and he denied everything. We argued all weekend over txt about it and he went out all weekend on a session instead of coming home and dealing with it. I found out he did met a girl for a drink and stopped at her house although they gave both said nothing happened!

There had been a few problems in our relationship befor with him drinking and stopping out and he is rubbish with money in the breadwinner but I put up with all that as I genuinely thought he loved me and would never stray. I’m so devestated as he is my best friend and I love him loads. At the moment he is still at mine but planning to move out on Monday. I think I could forgive him but would worry if it happens again but am I already being a mug for overlooking the other problems we had?! Has anyone been in a similar position and has any advise? The thought of being single and lonely again in soul destroying 😓