So the counterfeiters will use a real hash from one (or from hundreds) of the real products.
That's why creating counterfeit-proof physical money is still an unsolved problem.
I've been thinking - maybe something like bitcoin can help. When you buy a product, you get 1 coin with it. When you resell, you have to send that coin to your buyer. Since counterfeiters can't make coins, that serves as a proof. Unfortunately it creates an annoying layer that all sellers of goods must follow.