I think the problem is developers/companies only have so much time/resources, and figure that x people might pay for an app/service, but 100x will use it if it's free (with other monetisation strategy), then why bother coding & interfacing with a payment system (and this starts to get convoluted and require and entire department handling payment and tax issues across different countries and jurisdictions) for just 1% of likely users?
Not saying that's the right approach, but that's probably how the thinking goes. Billing is certainly easier than it used to be (that's what the 30% app store cut is for), but can still get convoluted, and might have the perception of being convoluted.
Some do. I pay to remove ads from the wunderground app which IBM claims means they don't sell my data. Not sure if believe them, but at least I don't see ads.