Why is there the dabate?
If you try to directly download 20+ MB from Apple using your iPhone you will be told, by Apple, that you must be connected via wifi. Any method that circumvents this direct connection of iPhone to app store over 3G circumvents the "limitation." The limitation is intentionally imposed and could be intentionally iliminated, but with what consequences.
So to answer your question, yes, it is Apple that applies the limit. It likely was at the request of the carriers, but Apple had no obligation to enforce the limit. I guarantee you the companies would still carry the iPhone without such a restriction. Also, to answer the second part of your question, I have never seen an Android phone that caps their download limits. This 20MB cap almost has me mad enough to switch to Android or a new touch BlackBerry, as I have unlimited data on TELUS, which I cannot use. So if Apple fails to address this, or fails to adequately upgrade the next iteration of the iPhone, I would strongly reccomend switching to Android.
All of this is stupid and makes no sence, The reason i say this is because i like everyone else can't download more than 20 megs, yet when i connect my iphone to my laptop to download large files i do it through the 3g on my iphone.So it's still my iphone thats doing the work ,I don't have any form of broadband other than 3g ,so to have such limits in our so called tecno world dosent make sence when i like you have unlimited data . Someone is a little out of date here and for once it's not me.