Before finding some possible solutions, I think it's important to review why there are so many comments. You say it's primarily because of opinion-based topics and I can agree here but there additional points that need to be taken in in order to find an appropriate solution.
Let's first discuss the whole point of leaving a comment in a broader light. Whichever site you browse to, you can usually some repeating patters. Be it the Facebook like button, the tweet button, the share button or the button to leave a comment. Some things are implemented in every site to encourage interactivity between the site owners, the content and the users. Oftentimes, the buttons mentioned beforehand have the specific purpose to attract even more users.
The important bit is the comment function. It's something that has nearly every site. It allows the users of a site to interact with the content by leaving statements, opinions, ideas, suggestions, feedback and so on. It helps to connect the users with each other so that you don't only bind the users to your site or forum but also connect them with each other to increase the potential output of contributing. It's a very neat function.
Let's take a look at one big player in social media: Facebook. People share their life, visions, ideas and so on on this platform and other users have the opportunity to virtually live side by side with the content creator. They have the means of communicating by publishing comments or giving a like, they can also share contents. This lets the users interact but also gives a hint what a comment button is for: to comment on other people's content. And here comes problem if we review "comments explosions".
Actually that there is chit-chat, as the network and you call it, is nothing that isn't predictable. StackExchange usually isn't the very first time you surf to and make the first contact with. Facebook and other big sites are way more likely to be your first target. And there you get an idea on how a comment function should be. At least that's what a user thinks. It's there to comment. And commenting is not only giving feedback or suggestions but also chit-chat.
So if users come here for their first time and are not reading the rules carefully (let's be honest: the biggest portion of users probably don't), it's natural for them to comment on questions! And as I mentioned earlier, this also concludes chit-chat. This is natural because users are "shaped" to use the function like that. Very likely, it's the first time for them to find a site that's so strict about it. So the whole term "add a comment" is built to trigger such comments explosions because it's not the thing you would normally do with a comment function. Clarifying the term might help nevertheless is technical so it's no feasible option.
(A possible step might be to abolish the whole term "comment" network-wide and instead use something like "give feedback" "have a suggestion? post it" or something else to tell users explicitly what is expected from them. If you just use "comment", it's predictable that it will be used to comment on something.)
This might seem somewhat implausible, nonetheless the term is coined. Definitions of "comment" include:
A statement of fact or opinion, especially a remark that expresses a personal reaction or attitude.1
an observation or remark expressing an opinion or attitude2
to make remarks, observations, or criticisms3
To conclude this section: It's important to understand that the term comment is already coined if users come visit the site. The problem is that the site's idea of how a comment should be used is different to what a user thinks it is supposed to be.
Another point that encourages "chit-chat" is the very nature of this network. You might wonder now as the network actively discourages chit-chat, however the result is that chit-chat is encouraged. The nature of this site is to ask a question and to get an answer and to build up a lasting knowledge base - nothing more, nothing less.
As questioner, this has the effect of not being binded to the community but to the site itself. Let's be honest: Most users, expect the seasoned ones, have little to no contact to other users except for the part of answering questions. The social component simply is absent so that the community can focus on the questions. This is good to maintain a constant flow of professional answers, nevertheless it's bad for the community itself. I don't question the very nature of the network, still I think it's important to grasp that users are only connected to the site itself but not to other users. This is good for the site owners as there is little to no threat of an abrupt loss of users because they oftentimes don't have a relationship with each other and are more likely to abide by the rules of the network.
The response to this paragraph might be: "But we have the network chat!". Yeah. That is indeed here. However, how many users do actively use it? Not nearly as many as are active on the site itself.
Of course the network has built something else to simulate social connectivity and it's called reputation. There are also badges. But this actually also encourages chit-chat. The thing is if I receive reputation, I know that my content is useful for the community itself, nevertheless I usually don't know for who exactly it's useful. Again, I receive a response from the anonymous community but not by the individual users of the community itself. And if users want to thank individually by the way of comments, this way of communication usually gets deleted immediately as it's chit-chat. Sometimes, there are answers where I think "Wow, nice! That really helped me" and I feel obligated to say more than just numbers and so I basically need to abuse the comment function as there is no other option to it.
Yes, I could do it in the chat, but sometimes this is inappropriate as the user who wrote the answer might not want to get the attention of a whole chatroom. (Yes, there are many users like that.) Yes, the option of opening a individual chatroom is known, oftentimes this is simply ignored and I simply don't want to open an individual chatroom each time I want to thank someone.
The conclusion of this section is that the network simply doesn't offer an easy a feasible option right now to communicate from user to user in words. In numbers, yes. In words, no. Therefore, users might feel the need to abuse the comment function which results in the discontent of the whole community.
The last point of the "why" is that the sites normally are not strict themselves. Look at a recently migrated post to our main site "Why do Internet forums tend to prohibit responding to inactive threads?" and you see several comments that don't contribute to the answer in a productive way out of the network view. Do they contribute out of a social aspect? Hell yeah.
Nevertheless this happens on many sites and not rarely it's the "big fishes" of a site that post such comments. These then aren't removed and you shift from the zero-tolerance stance to the "If it's funny or from a seasoned user, it's okay" stance. Other users simply copy this behaviour and you end up with a rapid succession of comments that are not productive for the question asked. Nevertheless, if you enforce your zero-tolerance stance even more, you might end up with complaints from seasoned users who act with such a stance and you might even promote more chit-chat.
So what now? The biggest point of why are explained. What should we do now? Unfortunately, you have very limited options as we deal with a network-wide behaviour and a definition of a term that is totally contradictory to what it naturally means for a big portion of users.
First thing if you remove a comment should be clear message why comments are removed. I'm pretty sure you already do this but it probably isn't enough. Instead of "comments are supposed to improve a question" try "comments are supposed to give constructive feedback to the question and / or answer itself". Improving something can mean so many things that oftentimes users think that something is legitimated but in reality it isn't. If you use some explicit definitions should be used when, you can perhaps discard some of the comments that would usually appear.
Another thing would be to open up a meta post to ask the question you did here on your site specifically, link two or three questions and ask the community how specific comments are constructive and some aren't. You can define and impose many things, still the community decides to follow your definitions and rules. This could lead to some backslash as this is a very aggressive way of speaking about the problem.
Yet the last thing, I recommend is to ask your community if there even is a problem. Chances might be that the users don't see a problem at all as this happens very frequently. Yes, you as moderators or seasoned users see problems, however your community might see it quite differently depending on the situation.
I can totally understand that it's annoying to impose the site guidelines each and every time and to remove comments on a daily basis. Yet, many things lead to this particular behaviour and specific adjustments in the wording of comments or even abolishing the term altogether might lead in a stark decline of comments explosions.
Your non-technical options are limited as this is a network wide challenge to face. Your best bet is to slowly persuade users to comply with your rules and to show the advantages of following them. Advantages might be reduced workload on moderators and seasoned users, more clarified questions and overall community happiness.