Set the autodiscovery to OFF for those add-ons that support that, and removing the add-ons that do not.
As I said, there isn’t one discovery service. Each add-on implement discovery individually.
All I can say is if you don’t think it’s hard, please submit a PR. No one else is working on this. Making a change in core which changes the API that all bindings must be adapted to seems pretty hard to me.
You can compare the versions in the backups to see which add-ons are responsible for the repeated writes and file an issue or go fix that add-on. I suspect the problem is you have one or more add-ons which need to be fixed if you are seeing that many writes.
You can follow the official recommendation and use ZRAM for $OH_USERDATA. Then the number of writes doesn’t matter.
I’m not seeing this file written to anyhting close to that much. Maybe a few times a day, but when it is written to it’s because the Chromecast add-on that is doing it (and we already know the Chromecast binding is kind of broken). I suspect MQTT Home Assistant and Alexa also write to it periodically. But I’m not seeing them do it in my backups.
I don’t know if this helps, but make sure your inbox is either empty or any discovered Things which you don’t plan on creating a Thing for is ignored. OH should stop updating that record if it sees it’s already seen it and you’ve ignored it. I’m just guessing at that though.
As was discussed in the link to the ESH discussion, you can set the JSONDB write delay to something larger (Settings → JSON Storage). Then it should save up all the changes for a few seconds before writing. By default mine is set to 500 msecs. if this is set in your system and it’s writing to this file more than that often, file a bug report because something is broken.
To prevent every change from turning into two writes, in that same settings page you can change the number of backup files to 0. Of course that disables the backups so you’d be taking on that risk.
As I explained above, those settings are to control how openHAB goes out and searches your computer and network for devices for which OH has an addon. That’s how the “suggested add-ons” section gets populated in the Add-on store.
They have nothing to do with Things and the DiscoveryResult.json file.
As was discussed in the ESH link you posted above, some bindings rely on the tiemstamp when a device was last seen to do time-to-live. They can’t do that unless they record the time when they last saw the device. But that does answer the question about whether setting the Thing to ignored will change anything.
So it’s not a bug, it’s working as designed.