It seems very recently SPO behaviour has changed to remove all whitespace from a field if it's empty. There is no way to change this behaviour and there is no documentation of this change happening or being proposed to save db space.
This has caused some chaos for us as many legacy SharePoint solutions that our clients use rely on being able to save a blank space into a field to be able to override another field value to be empty.
Here's an example of the logic:
Loaded Template has Title -> Column in other list overrides Title -> Save other column as " " to set no Template Title
There are several very messy design patterns that I can think of to work around this but quite frankly it should not be out of my control what validation I need in my item fields. It's astounding that MS is allowed to pull the carpet out from under so many clients and cost users companies a fair bit of money adapting to platform changes.