The sex is bad and you've already cheated on him once? No matter how nice this guy is, you have no business being with him. Tell him you cheated or just break up with him. Either way, end the relationship both for his sake and for yours.
You don't deserve to be stuck in a relationship that doesn't satisfy you. And your boyfriend doesn't deserved to be two-timed by a cheater. For those two reasons, both of you need some alone time.
Do not try to salvage the relationship, and spare him the heartbreak of knowing that a woman he cared about kicked him in the heart. Just tell him he's a nice guy and then leave him and go back to dating your ex. Or spend some time reassessing your morals. Heck, do that regardless.