Not sure there is an easy answer is to this, even if part of the problem is that the IRS and state regulators are too understaffed to provide sufficient oversight (the author of the article didn’t pursue this suggestion, although it doesn’t sound implausible).
All nonprofits are businesses. It’s a common misperception that nonprofit organizations aren’t supposed to make a profit, or aren’t allowed to. But that’s not the case. The difference between a nonprofit and a for-profit company is in what they do with those profits. Nonprofits, in return for a tax exemption, are restricted in terms of what they can do with the money they make: they are supposed to reinvest all it back into the organization in order to advance their mission. But that doesn’t mean it can’t pay high salaries or provide perks to employees. There is purposefully broad (though not unlimited) leeway given to organizations to determine what is necessary to spend (or hold) in order to further that mission.
When most people think of nonprofits they think of charities, religious organizations, hospitals and schools, but they also include trade associations, unions, governing bodies, and social welfare groups. I assume that no one quoted in the article would argue for changing the tax code so that these kinds of organizations can no longer operate as nonprofits. And it’s not as if squirreling away profits and paying large salaries is unheard of at charitable or educational institutions: Harvard sits on an endowment of over $25 billion, and prestigious university presidents can make over a million dollars a year.