What if we just made it illegal for corporate entities (including nonprofits) to lie? If a company promises to undertake some action that's within its capacity (as opposed to stating goals for a future which may or may not be achievable due to external conditions), then it has to do with a specified timeframe and if it doesn't happen they can be sued or prosecuted.
> But then they will just avoid making promises
And the markets they operate in, whether commercial or not, will judge them accordingly.
tl;dr: You're allowed to lie, as a person or a corporation, as long as the lie doesn't meet pretty high bars for criminal behavior or public harm.
Heck, you can even shout fire in a crowded theater, despite the famous quote that says you can't.