Marriage is often a compromise. I mean, yes, we all make lifestyle compromises within the confines of marriage, but when we get married to begin with, we are getting married to someone who has some things about them we don't like. What's important is that 1) you can see yourself spending the rest of your life with your lover, and 2) you find it unlikely that you will meet someone better.
My freshman year of college, a friend of mine said, "Love is not about seeing all the worst parts of your partner, and not caring about them. It's that you see all of the worst parts... and they don't matter." When we are happily married, it is because what we like in our partners has gone past a kind of tipping point, and those bad parts don't matter to us anymore.
So, let's say we meet someone who is more perfect. The first problem in choosing to leave lover A to go with lover B is that we have no initial way of knowing that lover B is more perfect. Think of how much time you spent with lover A to figure out how perfect they were for you--this was at least a matter of months, if not years. You will need to spend at least that much time with lover B to figure out if he or she at least matches the perfection in lover A. It will probably take you much longer to determine that lover B happens to be more perfect. The proportional difference between 95% and 99% is less than 1/20th. That is a difference small enough to be negligible for many people.
One might interject here, "By seeing how perfect A is for you, you have a good idea of what makes for a perfect lover. So can't you know right off whether B is more perfect just by asking them some questions?" Sadly, no. You can certainly trick yourself into thinking B is a better mate, though. Let's suppose that I'm hanging out with B, and I've been thinking, "Man, she is just about as awesome as the girl I'm seeing now." Then the discussion turns to music, and it turns out that B happens to like a lot of the weird trance music I listen to, rather than the buttrock and classic rock preferred by lover A. I say to myself, "Wow! Lover B is more perfect than lover A!" So I leave lover A for lover B... and it turns out that she is a frothing-at-the-mouth crazy bitch who gets really jealous, and wants to know where I've been every time I leave the house. Or maybe, once I'm living with her, it turns out that she doesn't clean up after herself, ever. Then one night, after crying into my pillow for two hours instead of sleeping, I call up lover A and beg her to take me back, but she is already dating another guy. It's not even some guy that makes me wonder what she sees in him; I know exactly what she sees, and I know I can't compete with that. So I break it off with lover B, before she can ruin my life even more, and I join the world of being single, trying not to compare every girl I meet with lover A, but she just won't get out of my head.
Clearly, that scenario is sub-optimal.
On his main page, Ryan North linked a blog post about this comic, The Economics of Love (as told by T-Rex). The argument there is that if you leave A for B, you need to have enough years left in your life to develop a relationship that is going to turn out to have more happiness in it than you would attain with A. He does mention "the boredom problem" as a relationship plateaus, but there are solutions to that which do not involve divorce. I contend that you still have the epistemological problem of knowing that things will turn out better with B than with A. If you make this decision, you are gambling with your happiness in life; you might come out ahead, you might come out a little behind, and you might lose it all.
As a kind of epilogue, one of my favorite love songs (if you can call it that) is "Good Enough For Now," by "Weird" Al Yankovic. It takes a blatantly honest view of relationships:
You're sort of everything I always wantedThe important line here, throughout all the equivocations, is, "You're not perfect, but I love you anyhow." Now, that doesn't seem like the kind of attitude you'd have with someone you'd marry. But maybe it is! "Good enough for now" could mean "good enough to stay with until one of us is dead." Some people have told me, though, that "blatant honesty" and "romance" are things that are rarely (if ever) found together, and that ladies prefer things that are hyperbolic, such as "I Will Follow You Into the Dark." But bitches just gotta know how I roll.
You're not perfect, but I love you anyhow
You're the woman that I've always dreamed of
Well, not really, but you're good enough for now