For one: Linux packs them quite small and somehow Ubuntu fits everything in it's 700MB ISO. Second, you could have the more obscure drivers download over the air, or as a package from the app store.
Even if they can minimize their size, it's one of those things that has persisted in its present state for too long. Why isn't there a standard for (at least consumer-level) printer communication? I think this is just another case of mobile device constraints necessitating overdue reform.
If that's what you want, you could have the best of both worlds if printers ran CUPS. Then you could have backwards and forwards compatibility.