The solution i know :
- add a plugin to override product model to get declared categories to disable from plugin settings
- hack the core product model(bad solution)
- write own search module and result component(or plugin), so you can add parameters in module, in case you need to disable categories only in some cases.