Given the comments, you have eliminated the two most obvious responses: Exit (leave for somewhere better) and Voice (complain to the administration for improvements). There may still be more available to you than you think. A good resource is Exit, Voice and Loyalty by Albert O. Hirschman.
Because marking is relative, you are dealing with a tragedy of the commons problem. The total available high marks are made scarce because your professor has a particular mean and distribution in mind. There are more people who want high marks than are marks available. If everyone cheats, all the allotted marks are worthless as a measure of coding or other talent. Everyone has an incentive to cheat because not cheating does not prevent the cheaters from being rewarded.
In a commons problem, you will not be able to resolve the ethics on your own. The problem is social-structural, therefore the solution also needs to be social-structural. Your options are as follows:
Brainstorm ways to associate a cost with cheating. For example, you could launch a honeypot for an assignment with an answer that is wrong in a specified way. Then you can take the students to task for stealing your intellectual property.
Work with administrators via the institutions available to you (Student unions, associations, political movements etc.) to punish cheaters more harshly.
Establish a network of students who recognize the same problem and seek to establish norms across your colleagues against cheating. For example, raise some money to establish an award for merit for students who succeed while following the rules. Elinor Ostrom, the nobel economist, is the expert on this kind of solution. I would read her work, but summaries of her ideas do exist.
The ethics of cheating, even where you are disadvantaged are pretty straight-forward. Contributing to the cheating makes for a worse society from utilitarian (everyone loses from coders who do not know how to solve problems), deontological (a world where everyone cheats on everything is not a world I would want to live in) and a virtue (people will not improve if they always cheat) ethics perspective.
Assuming that your institution is indeed not interested in fixing this problem, it is corrupt. The World Bank has a list of actions to deal with corrupt institutions. There may be something there to help you.
Beyond that, you should know that blowing the whistle on an issue almost never benefits the whistleblower. Take a look at where your favorite whistleblower is now, and you will see I am correct. You will need to evaluate for yourself the degree to which you can fight this problem. I do recommend fighting from the inside first, assuming that everyone is interested in resolving this problem. You should go all the way to the top, explaining your understanding of the problem as succinctly as possible. You should also offer to be part of the solution as much as possible.