This argument of yours becomes very doubtful once you consider the mechanisms of genetics and evolution. Nature is not forgiving, i'm taking a guess here, but I believe that any evolution that has no apparent advantages towards the survival of an organism will eventually lead to the annihilation of that organism.
I'm not going to pretend to know much about evolution, however,saying evolution relies on imperfections is, at best,an oversimplification. You may have been closer to truth had you said that homosexuality is an evolutionary mechanism to deal with overpopulatuon. Call me a homophobe, but it is blatantly apparent that homosexuality is a destructive aspect to the species, (Disclaimer: I'm not implying that if you are homosexual,that nature wants you out.)
If anything,evolution may rely on removing those imperfections once they become apparent. And if those imperfections somehow work out,the orginators will/may be the ones to die out. Now is the time you should factor in the probability that random variations in a molecule as complex as dna will result in anything other than a cancer. I'll admit that my argument falls apart once you factor in human intelligence,which brings in a whole new paradigm of what survival entails.