2-party system is bad. Regional representation instead of population representation is bad. Allowing gerrymandering is bad. Letting companies/oligarchs to contribute to election campaigns is VERY bad.
All of this ends with a system that cannot reform itself. It's a common failure mode in early democracies. There are known workarounds.
If instead all votes go proportionally according to what people voted, you get less extreme policies and encourage parties to build coalitions. Nobody is happy, but fewer people are extremely unhappy.
E.g. Republican Schwarzenegger has been advocating against gerrymandering for a long time.
Force all states to cast election votes to be proportional to citizens' votes (some states do but others do not).