I actually tried to add the navmesh invoker on the player and it worked just like you expected. The reason I didn’t use it because if there is no NPC around the player, the player still needs to generate navmesh around itself which is a waste.
One way I use to optimize the navmesh invoker is changing its TileGenerationRaidus at runtime based on its LOD. The lower LOD (0, 1) gets a large radius and the higher LOD (2, 3…) gets a smaller radius. I tested even the radius is 0, the NPC still generates navmesh in its current tile.
In order to do this, you need to expand the Navigation System which is in the engine code. I am not sure if it is possible to you.