Perhaps I'm being simple, but I don't really understand the problem here. Companies are sitting on too much cash that they don't know what to do with. There is only so much that can productively be spent on R&D. If they don't do something with their cash, investors will start demanding a dividend. Once you start giving dividends it becomes hard to stop giving them. To prevent perpetual dividends, companies perform a buy back which also helps out investors but is a one time thing which doesn't need to be repeated.
But what's wrong with perpetual dividends? I think the relationship between investors and dividend-paying companies is a lot healthier than non-dividend-paying companies.
If buy 1 share of DividendCorp I can rationalize it as a stream of future dividends generated by the company's profits. I want the company to succeed in the short term and the long term.
If I buy 1 share of OtherCorp which pays no dividends I am purely speculating on the price. I don't even have to care what the company does I could just be one of those "technical analysis" people riding chart waves. I just need to pass the bag to someone else at a gain.
You're not speculating on price, you are trusting that the company will make sound decisions which will result in growth and future profits, thereby increasing the stock's value. People mostly invest in stocks that don't pay dividends as opposed to instruments that pay fixed returns or companies that pay dividends because there is far more upside potential. I don't want all the companies I invest in to start being big dividend paying companies because that impedes their ability to grow.
This will depending on your tax jurisdiction, but it's almost certainly a consequence of taxes:
If the company buys its own shares, there are usually no taxes on the purchase.
If the company issues dividends, it has to pay taxes on dividends distributed. The shareholders may also have to pay a small amount of taxes on dividends they receive.