NOTE: I wrote this after writing all of the rest.
I'm assuming the issue is FPS (Frames Per Second) related, which may or may not be the case. What does the Window tab in the debugger say? Does the FPS field dip below the target FPS?
Do all/most of the nodes have some form of collision or physics?
I ran into a similar performance issue in one of my old projects because I had too many StaticBody nodes. By reworking a bunch of the assets into a couple grid maps, performance was much better (my hunch is a grid map uses a single static body). I think I went from 200-500 StaticBody nodes to somewhere close to 40-120, and as a bonus it was easier to make levels too.
It could also be the rendering that is causing the issue. Are you performing any sort of culling or LOD? That may help. Even something as simple as putting a Area over the player that disables and enables the visibility of MeshInstance nodes when they enter/leave the area may improve performance.
You could also try reducing the far clipping property on the Camera, which may reduce the tax on the GPU and improve performance.
If the nodes have _process, _physics_process, and/or _input, you may want to have them not being called by using set_process(false), set_physics_process(false) or set_process_input(false) when you are not needing to use those functions.
If removing nodes increases performance, you may be able to increase performance by breaking the scene into chunks, and then creating/deleting the scene chunks as the player comes and goes. This may require restructuring how your scene(s) are set up, and depending on how the game play works, it may not be feasible.
Hopefully that will give you some ideas on how to solve the problem.
Performance problems are especially hard to pin down, since the reason behind the performance drop can vary from project to project.