### Godot version

4.0.dev(dc3175e4cdb4e54e1c6200b6c4d07646eea95284)

### System information

Any

### Issue description

EditorPlugins that depend on the resources that Node has will not be visible when SubInspector is focused.

https://user-images.githubusercontent.com/61938263/210553656-86669f57-e41f-427e-a650-30630c27d850.mp4

This is caused by two problems:

The first is caused by implicit editor deletion in Node3D. This is fixed by #70907.

The other is due to a change in inspector update timing, which is regression by #68498. Revert PR #70909 will fix this issue, but if not, we will need to update SubInspectorEditor in the correct way.

### Steps to reproduce

Select Path3D or CollisionPolygon3D and open a SubInspector such as Script.

### Minimal reproduction project

[plugintest.zip](https://github.com/godotengine/godot/files/10343962/plugintest.zip)

Rect2 header_rect = Rect2(Vector2(header_offset_x, 0.0), Vector2(header_width, header_height));
			Color c = bg_color;
			c.a *= 0.4;
			if (foldable && header_rect.has_point(get_local_mouse_position())) {
				c = c.lightened(Input::get_singleton()->is_mouse_button_pressed(MouseButton::LEFT) ? -0.05 : 0.2);
			}
			draw_rect(header_rect, c);
			
			{
				int separation = Math::round(2 * EDSCALE);
				int margin_start = section_indent + separation;
				int margin_end = separation;
				
				Ref<Texture2D> arrow = _get_arrow();
				if (arrow.is_valid()) {
					Point2 arrow_position;
					if (rtl) {
						arrow_position.x = get_size().width - (margin_start + arrow->get_width());
					} else {
						arrow_position.x = margin_start;
					}
					arrow_position.y = (header_height - arrow->get_height()) / 2;
					draw_texture(arrow, arrow_position);
					margin_start += arrow->get_width();
				}
				int available = get_size().width - (margin_start + margin_end);
				
				String num_revertable_str;
				int num_revertable_width = 0;
				bool folded = foldable && !object->editor_is_section_unfolded(section);