Let chatters toggle the visibility of their Mod/VIP badge by using the existing Chat Identity controls to customize Role Badge per-channel
Before, Twitch had already replied on this site that they wanted to implement something like this, but since then, over 5 years had passed with radio silence and without any progress, even though this is a small feature. I don't know about you, but myself, I'm not getting any younger...
After all this time, I hope this can now be taken notice of and implemented quickly.
https://twitch.uservoice.com/forums/928738-badges-emotes/suggestions/38534413--visually-disable-moderator-badge
This updated suggestion requires minimal effort to implement on Twitch's part: there are already nifty and intuitive Chat Identity controls that allow chatters to customize their various unlockable badges (or entirely turn off their Global Badge) that will appear next to their name in their future chat messages, including per-channel customization. Your Role Badge for the current channel already shows up there, as well. However, at present, customization is not allowed for it, with the exception of allowing Lead Moderators to choose between displaying a Lead Moderator badge or a Moderator badge, which is a good start.
This feature request is simply to adjust this by adding a single extra button to the Chat Identity controls to allow turning off the display of your Role Badge in that channel (meaning that Lead Moderators will now have a total of 3 choices) in your future messages, like the existing "None" button for turning off your Global Badge.
This will allow anyone with a Broadcaster, VIP, or Mod badge the freedom to control when they chat with this badge displayed and when they chat without it displayed, according to their present needs. In the first place, these badges tend to end up being given to chatters who chat often, and the possible reasons one would want this basic freedom are numerous and situational (for example, repeated chatting with a visible mod sword icon at all times may appear overly strict, harsh, or even threatening to onlookers and/or to potential new chatters, even worse when multiple mods are chatting concurrently; similarly, a "wall" of VIP badges from multiple VIPs chatting may present the image of a 'closed off' or 'exclusive' community, or otherwise appear unwelcoming or discouraging to potential chatters or to potential new community members altogether; an individual mod may wish to not garner attention as one, and simply keep chatting as a regular regular while doing their duties "quietly", or an individual mod may wish to serve as "a backup mod", etc). These reasons have already been explored in the original Twitch-acknowledged post linked above and in many of its comments.
As the adjustment enabled by this feature is strictly Badge-specific, it is visual and cosmetic only: chatters with the display of their Role Badge currently turned off will still have the usual capabilities of their respective Role (such as immunity to chat restrictions, full access to moderation abilities), and will still appear normally, as before, in the chat's user list and output of /vips and /mods commands.
To give the broadcaster more control in regards to this new feature, they could be given a new setting they can optionally toggle for their channel to prevent mods/VIPs from being able to hide their badges in their chat, which will take precedent over the chatter's own setting for that channel, enforcing the broadcaster's preference. For even more control, this setting could be transformed to a granular per-specific-user permission instead (for example, a broadcaster could choose to allow their "backup mod" the ability to turn their badge off, but not to the other mods).