Because a lot of the cheap supermarket stock is own brand, which he can't sell in his shop, and supermarkets generally limit the number of each item you can buy.
I've been told it's a deal with the wholesalers, but I'm not sure how credible my source was. I do know the limit exists. Try buying over a hundred 500ml bottles of mineral water or a few dozen loaves of bread.