Often, the issue is the other settings that are on the same webui page. The router doesn't seem intelligent enough to detect what you changed on that page, so it will restart every service that could be affected if you had changed every setting on that page.
This is something I'd like to take a look at eventually, just never got the time to.
Conditional service restarts can be implemented on the webui, I've done it myself with the Other Settings page that I added.
Asuswrt-Merlin: Customized firmware for Asus routers
Github: github.com/RMerl - Twitter: RMerlinDev
See the sticky post for more info.