These are good questions.
even today's high-end devices struggle with a modern web pages.
At some point, designers are going to have to make concessions. cnn.com takes hundreds of MB of RAM to render in Firefox. It's a huge hog, loading hundreds of resources. That's just not going to work on a phone with limited memory; you're right that there's only so much optimization we can do.
But the idea isn't to run desktop Gmail or desktop CNN on your phone. If our competition is "native apps", all of which are purpose-built for the OS, I don't think it's unreasonable to expect app developers to make at least /some/ changes to their sites to make them work well on our devices.
that, and web apps can't tap into the hardware as well as "native" (note the quotes) apps. you can talk about extensions, but then you are asking devs to write FF OS apps, not web apps, and you are right back in WebOS land.
One difference is that Mozilla's "extensions" (and ohboy do we have them) can become part of Firefox and the general web platform. As a simple example, we added an API for reading the state of your battery. That's primarily useful on phones (and I believe we support it on both Firefox for Android and Firefox OS), but we added it to desktop Firefox, too, so you can read your laptop battery's charge.
Of course, not all APIs are relevant to all devices. If you want to frob the device's vibrator, well, that's probably not going to work so well on a laptop. But the idea is for all of our extensions to become standardized (that is, to no longer be "extensions"), and for them to be available on more platforms than Firefox OS, where applicable.