I think you could do both, without overloading kind 0. You'd publish a product-specific metadata event, and a fallback profile that includes a link to somewhere you can view the full listing. I don't think that would mess anything up, and it would get you the fallback you're looking for.
Fallback profile, mhm, could works. But are you still talking about a keypair for every product?