I usually buy fresh food like jamon serrano in markets, but maybe if you want it wrapped in plastic could be better in a supermarket.
It's very difficult to answer your question because usually I buy these things, so I can know how expensive they are in a particular shop. I think the best thing is to ask people around or in your hotel which is the best place to buy what you want, because each one knows his neighbourhood and a trip to a different neighbourhood doesn't worth for a small buying. It would be good if you get some propaganda from a supermarket to look some prices, I guess you know there are very different kinds of jamon and wine.