1. Stay at unethical job you hate.
2. Get a new job you don't hate.
Well, the answer is pretty obvious. But there is a deeper challenge, which is the choice between:
1. Stay at unethical job you don't hate.
2. Damage/destroy your career and job prospects.
This latter scenario is really a "damned if you do, damned if you don't" situation. It forces you to pick. Would you rather be virtuous (i.e. ethical), or be paid?
> You can't just walk away from a decent income because idealism.
Sure you can. You just choose not to -- and (IMO) that's fine.