The problem here is programmers having a fixation on licences as some sort of template that must be followed exactly without having any real experience with how the law actually works. This is convenient for something like an OSS license used extensively because you have some common reference.
However, many contracts don't follow a template and it's normal in other contracts for items to be customized to any extent required. Template licenses are often used to intimidate people who aren't aware of their rights and what is possible. For example, employers may say that they can't modify an employment agreement because it's a standard template to make the potential employee feel like there is some legal rather than policy issue at play. Similar things happen in other places and you have to decide how much you want to fight policy, but parties almost always have the option of agreeing on custom terms.
This is hard today in the OSS ecosystem, but it'll have to evolve to support additional terms.