You are correct. The Mac is the last true general purpose computer that Apple produced. All the latest i{Phone,Pod,Pad} gadgets do not permit you to load and use a program that Apple hasn't approved. Current rules also demand that such an application must be handwritten for the gadget, and not compiled or translated from another language. This puts a major crimp on any porting desire that developers may have.
And a good portion of iPad apps are probably free. There are a ton of free iPhone apps.
Some would be free, but they still have to come from a developer that is authorized by Apple, and he will need a Mac to write the software. The costs aren't that high - a $99/yr for the iPhone developer program and whatever you can spare for a Mac. There is also a free developer program, I don't know how it compares to the $99/yr plan and what are the differences - Apple doesn't say and does its best to hide it. To compare, I downloaded the Android SDK without signing anything or paying anything, directly from Google, and there are tons of resources to help to get you started (they are pretty good.) Some free software gets started as a weekend project, and then they get life on their own. Having fewer obstacles translates to more software.
I don’t think you can really call iPhones or iPads and especially not iPods computers. They are all mobile devices and like all things you have to make certain tradeoffs for the package.
To me, this is basically a huge quality control thing. If someone’s iPhone or iPad starts having horrible battery life, or becomes unstable Apple will be blamed. Wouldn’t matter that the true culprit is some strange app, it is Apple that is blamed. Most people are willing to make the tradeoff to have a well functioning phone with the allowed apps over being able to go out and find more apps elsewhere. For those who want that, they have a choice in Android.
FWIW, MS is going to a very similar model to Apple for WinMo 7. One app store to get apps from, strict hardware requirements etc. And they only allow you to run approved software on their XBox.