Look at AT&T Android phones. You cannot side-load apps. Look at Motorola Android phones. You cannot use custom ROM. Heck, you cannot even apply a standard Android OS update for any of those non-N1 phones unless you root and use a custom ROM. You have to wait for each individual updates from the respective OEMs/carriers.It's a very complex issue I don't think you can just narrow it to market flaw, since Apple was not force to sign such a contract. they chose to make it that way, and that is also one of the aspet, I still can install the apps I want, or access my phone to use it as USB hardrive, or something as simple as to chose which app i want running on the background.
Yes, Android gives freedom, but it's a misconception that Android gives freedom to users. That's not the case. Android gives freedom to OEMs and carriers, to do whatever they want with an advance smartphone OS, for free. Carriers were really scared when Apple came out a smartphone OS where Apple is in complete control of the OS instead of them. They were afraid that it might start a trend of the control moving away from them. Android is a blessing, putting the control back to the carriers.
Oh, by the way, jailbreak for iOS4 is out. So you can do whatever you said you wanted to do above.