If there are two people, one who's behavior is confined by a strict moral code and another without any constraints are in a competitive situation where the possibility to cheat or otherwise utilize unethical or immoral means to win, the one without moral constraints, all else being equal, seems to have a clear advantage over the other since more options for pursuing victory are available to one and not the other. Generalizing from this example, it seems that morality could consistently place ethical individuals on the losing end of any competition. Life and human society being a competition of sorts in some respects, does this mean the victors and their progeny will be less moral? If not what are the advantages of morality and ethics?
When one person is unethical and everyone else is ethical, that person gains an advantage. But when everyone is unethical, everyone suffers. It's the classic "Prisoner's Dilemma".
From an evolutionary point of view (if you accept the concept of group fitness) an ethical population as a whole could outcompete an unethical population.
I don't have a citation handy, but I believe there have been studies showing that the actual distributions of unethical versus ethical behaviors in areas such as sexual fidelity do roughly correspond to theoretically optimum distributions.
First, constraint is not always an evolutionary disadvantages. Lemmings do not constrain themselves to the limits of their swimming ability, and many of them die. The same can be said of humans pursuing victory. Some social and natural constrains are actualy helpful.
Second, maybe high-functioning sociopathy is an adaptive mechanism. As another answer points out, the best for the overall group is generally cooperaton. A high-functioning sociopath benefits from the trusting nature of society. The best the high-functioning sociopath would get is what he can steal/take from others. Think of it this way if 90% of us were high-functioning sociopaths, then we would never develop technologies like computers and iPads. Thus, a socipath dominant society would probably kill itself out compared to a more cooperative model. So the genes survive best in cooperation.
An immoral or unethical society will eventually destroy itself. Drugs, homicide, promiscuity (sexually transmitted diseases) etc. all have bad consequences in the long run. One of them is lessening the lifespan and bringing about a gradual discontinuation of the race.
Morality makes us human, while immorality sends us to the lower level of animals who live by instincts and do not restrain their desires.
There is a higher purpose to this life, which is why some of us are compelled to try and live morally. There is an ultimate reward for those who do good in the Hereafter. They will win then, even if they don't now.
Anyway, as a side-note, isn't it amazing how God gave us the ability to think and rationalize? Can such a wonder as the human brain just evolve by itself with no Designer to work on it? Even the most amazing computer game needs an amazing creator.