Rob, "large textures" is of course subjective. I think 512x512 textures are large. One 512x512 image is around 800KB, and that's without an alpha channel. As for changing the b3d file format, what Peter said. The b3d file format already does that, that isn't the issue. The issue isn't storing additional UV sets, it's using additional UV sets in real-time.
And in case you didn't notice, I eventually figured out and agreed with John. When I thought he meant forcing everyone to be saddled with additional UV sets all the time (and thus the additional memory consumption,) I was against that. But when I realized he meant making the number of UV sets Blitz uses selectable when initializing the graphics mode, well there's no reason to disagree with that. As you said, in that case there's no waste. Indeed, the change wouldn't break any existing code because setting the number of UV sets could be optional. If you don't explicitly define that it'll default to 2 UV sets, what Blitz currently uses.
And in case you didn't notice, I eventually figured out and agreed with John. When I thought he meant forcing everyone to be saddled with additional UV sets all the time (and thus the additional memory consumption,) I was against that. But when I realized he meant making the number of UV sets Blitz uses selectable when initializing the graphics mode, well there's no reason to disagree with that. As you said, in that case there's no waste. Indeed, the change wouldn't break any existing code because setting the number of UV sets could be optional. If you don't explicitly define that it'll default to 2 UV sets, what Blitz currently uses.