### Godot version

4.2 Dev 2

### System information

Win10

### Issue description
   An area node, and setting area.set_deferred ('monitoring', true) in gdscript,and then 4.2 Dev 1 and below are no problem.
Updating to Dev2 failed, and tests found that setting other properties was also ineffective, such as Sprite2D.set_deferred('position', Vector2(100,100))

### Steps to reproduce

add area node in scene
write the code in _read callback

```gdscript
func _ready() -> void:
	area_2d.set_deferred('monitoring',true)
```
run,observe the node properties in the property inspector

### Minimal reproduction project

[test_bug.zip](https://github.com/godotengine/godot/files/12206623/test_bug.zip)

DEV_ASSERT(p_thread_singleton); 
#ifdef DEV_ENABLED
	if (thread_singleton) {
		thread_singleton->is_current_thread_override = false;
	}
#endif
	thread_singleton = p_thread_singleton;
#ifdef DEV_ENABLED
	if (thread_singleton) {
		thread_singleton->is_current_thread_override = true;
	}
#endif
}
MessageQueue::MessageQueue() :
		CallQueue(nullptr,
				int(GLOBAL_DEF_RST(PropertyInfo(Variant::INT, "memory/limits/message_queue/max_size_mb", PROPERTY_HINT_RANGE, "1,512,1,or_greater"), 32)) * 1024 * 1024 / PAGE_SIZE_BYTES,
				"Message queue out of memory. Try increasing 'memory/limits/message_queue/max_size_mb' in project settings.") {
	ERR_FAIL_COND_MSG(main_singleton != nullptr, "A MessageQueue singleton already exists.");
	main_singleton = this;
}
MessageQueue::~MessageQueue() {
	main_singleton = nullptr;
}