If the shopkeeper is just showing their wares (perhaps trying to guess what the customer wants) it would be more natural not to use definite articles. Now you ask for usage in Portugal. Some of the terms you suggest may be used in Brasil, but would be uncommon or not used at all in Portugal:
Soap. Sabonete is fine for soap you use on yourself; for washing clothes it would be sabão.
Pantyhose. Colãs (also collants) is the word I’m familiar with in Portugal.
Bobby pins. Ganchos, not grampos, is what we call them in Portugal. Or you could say ganchos do cabelo (‘hair ganchos’), as gancho generally means ‘hook’. But as the shopkeeper is pointing at them, it may be unnecessary to specify with do cabelo.
Pilhas are batteries for radios, torchlights, and the like, which I guess is what you have in mind. Baterias are car batteries.
Just naftalina would sound more natural than bolas de naftalina (literally ‘naphthalene balls’). If you wanted to say you want or saw, say, five mothballs, then yes, you'd say cinco bolas de naftalina, otherwise you just say naftalina.
Cartas de jogar (‘playing cards’) or baralhos de cartas (‘card decks’) is what we call it in Portugal. In context you’d just say cartas or even just baralhos.
Now fraldas descartáveis is what we call it nowadays. My problem is I don’t remember seeing disposable diapers in the 1970s at all, let alone remember what people called them, if and where they used them. I do remember well washable cloth diapers though; I lived in a small village at the time, and I don’t think people used them there; it might have been different in urban areas. My 2001 dictionary has fraldas descartáveis already.