I'd argue that it's unethical to put unenforceable terms into contracts in order to scare the signee into not doing something they might want to do, something that could better their family's lives, and something that's completely legal.
Many places being only California, North Dakota, the District of Columbia, and Oklahoma, and even there they're not entirely unenforceable. You'll still get fired, but you probably won't get sued. Maine, Maryland, New Hampshire, Rhode Island, and Washington have banned non-compete agreements only for low-wage workers. There earning more than $34K/yr and in the rest of the US, a contract is a contract, and violators will not only get fired, they're open to lawsuit for breach of contract, though I expect litigating an employee for breach of contract would be exceptional, say if the employee pilfered lucrative clients.
> I'd argue that it's unethical to put unenforceable terms into contracts in order to scare the signee into not doing something they might want to do, something that could better their family's lives, and something that's completely legal.
This is quite the straw man as noncompete contracts are always enforceable through termination with cause, and they are ubiquitous in standard boilerplate employment contracts.