Should I still marry my fiance? Please help!

Sorry in advance for the long post-

One year ago, when my current fiance and I were not yet engaged, he went to one of our close friends bachelor parties. I assumed they would go to a strip club, and asked about it afterwards. He said that they did not go. A week later at a party, I found out that they did go and my fiance was lying. We got in a huge fight. Later, he admitted to doing cocaine too- something I specifically asked him not to do. I decided to forgive him and we moved on.

Since then, we got engaged. We agreed that he would not go to a strip club for his bachelor party. After thinking about it, I also decided that I considered strip clubs cheating. (I don't know what about paying to have another girl dance on you makes it ok). Anyways- he went to another friends bachelor party last weekend. We talked about it beforehand, and I knew they would be going to a strip club. We agreed that he wouldnt buy any dances or pay any strippers (except for a dance for the groom). That was Friday. Saturday I asked about it, and he said that he only bought a dance for the groom and promised that he didn't get a dance himself. Sunday, we spent the day together, where he promised the same thing again. At the end of the day, he broke down and admitted that he had paid for a dance.

I feel betrayed. He knew that I considered that cheating, and that doing that would put us getting married in jeopardy, but he did it anyways. It isn't only that he got the dance (which disgusts me, and I still feel like he definitely cheated), but its that he initially lied about it. He knew that we may break up, but he did it despite that and decided to ask forgiveness after.

What should I do? He is very sorry, but I don't know if I can trust him. Should I still marry him? (our wedding is in a month and a half)