Setting up catalog taxonomy I'm fighting with pathauto patterns for a particular content type. The content type is bound to a taxonomy (a product catalog). I thought that the taxonomy tree should only hold container items (categories, subcategories, subsubcategories, etc) but not the end-nodes (products), and that it'll be possible to have the following URL pattern, consisting of the container node url + product alias + extension, as in [taxonomy-alias]/[node-alias].html.

This appears to be a wrong assumption though and causing trouble and bogus aliases.
I'm closer to an approach that the taxonomy should descend down to the very product node, and product pages should be tagged with the final taxonomy node.

This however brings up a question: Is this a way to go if a product can fit in more than 1 category? This smells like more maintenance issues later, because if a product were to be removed, we would have to remove it in X places; my intuition tells me it's not the right way.

Above this all there is a goal to have the URLs and breadcrumb consistent, in sync.

I'm curious to know your opinion and experience in organizing a catalog taxonomy.
Your first assumption was right. The taxonomy items should be for categories and the products should be nodes to type product. 

It looks like this is not as simple to setup for D6 where you could use 

[term-raw]/[title-raw]


This comment on drupal.org has some helpful suggestions


Download Entity API
enable entity and entity tokens
Setup a path something like [node:field-category:name]/[node:title]