We have a system of laws that decide which private contracts are enforceable and which are not. So we can try to change the law but as it stands we have decided that this one is enforceable.
FWIW I agree about not enforcing non disparagement clauses but legally that not the world we live in.