Most Helpful Girl
Some guys try to get the best of both worlds. You did nothing wrong in this situation; it is purely his fault. Cheating is a choice. While I cannot tell you the exact reason why your boyfriend cheated on you, I can give some theories...
Obviously your boyfriend did not care about your feelings or anything long term if he chose to cheat. He might have been bored with the relationship and maybe that's what caused his eyes to stray. Some guys don't like the idea of settling down and want to hook up whenever they want. Some guys just aren't that mature.
As to why he chose a girl that looked like you? He probably just wanted a knockoff version of you. I dealt with that once. My crush expressed feelings towards me and then went out with a girl that had the same hair, eyes, height, and interests as me. My friends told me that the reason he did that was because he knew he had to work to get me and that it was easier to go with someone easy that reminded him of me. Your boyfriend probably thought very similar. Maybe in his head, if the other girl looked like you, that justified his reasoning that what he was doing was correct. That because she looked like you, she "was you".
I know that you're very upset right now, but trust me girl, you can do better. In the future, find a guy that doesn't have a record of cheating. Maybe you and your boyfriend had great physical connection, but he obviously didn't have much loyalty to you.