Maybe a little late answer.
I've achived this goal by overriding native MenuItem class. In new class I excluded availableForNavigation checking.
Therefore, any changing of this parameter affects only those menu items, which are instances of unchanged class.
And in my custom tool, i put menuitems of my custom class without availableForNavigation checking, and voilà.
public static function resource($resourceClass)
{
return static::make($resourceClass::label())
... //
->canSee(function ($request) use ($resourceClass) {
return /*$resourceClass::availableForNavigation($request) && */ $resourceClass::authorizedToViewAny($request); //remove here
});
}