I think the word “punish” is used in scripture and the teachings of the Church because this is a concept human beings can wrap their brains around.
Our problem, as I see it, in resolving the depictions of God that seem to be contradictory (punishing versus all merciful, wrath versus spirit-without-passions, judgment vs unconditional love) is that we are trying to describe the actions, intentions, and motivations of a being that transcends us far more than we transcend the mold growing on last week’s bread.
If a goldfish watching your life from the aquarium could preach to his tank-mates about your interaction with him and the part of the world he observes, using only concepts native to fish, he it might come to conclusions that are free from error, in that he has come to the closest description possible for him of your motivations and purposes, but isn’t it obvious that he wouldn’t even have the ability to formulate the thoughts that correspond to what you are really up to, much less the vocabulary to express it?
We run into trouble when we start insisting that the words we find in scripture that describe what God does (like “punish”, “repent” of making man, “hate” this or that) must describe the very same thing when we apply them to God as they would when we used them about another human being, accompanied by the same human motivations, psychology, and emotions.
Jesus asked, “what is simpler, to say ‘Your sins are forgiven’, or to say ‘Rise, take up your mat, and walk’?” Similarly, we might ask, “what is simpler, to say ‘God punishes sinners’ or to say, 'A certain painfully dissonant condition will be inevitably be experienced by sinners as a consequence of their inharmonious relationship with the foundation, source and summit of all reality”?