Hi @david.al.fox,
You can use your approach one and handle non-existing pages with the redirection of existing pages or error handling for 404 pages.
Or I have another approach that I can suggest:
Do not create the [product-category]
page in Prismic. Instead, you can add a tag on the product page for the category, and whenever you want to query all the product pages which fall under the same tag, e.g., on the /products/watch
page: You can use Query by Tag method to query all the products which have a "watch" tag. Learn more about tagging system in Prismic.
Let me know what do you think.
Thanks,
Priyanka