I think having a GUC to change to a different set of semantics is not workable.
However that doesn't mean we can't do anything. We could have a GUC
that just disables allowing creating columns of type timestamp without
tz. That could print an error with a hint suggesting you can change
the variable if you really want to allow them.
I still would hesitate to make it the default but admins could set it
to help their developers.
You could maybe imagine a set of parameters to disable various options
that can be seen as undesirable features that sites may not want their
developers accidentally introducing.
That said, even disabling a feature is a semantic change. Consider for
example an extension that did make use of some feature. To be portable
and reliable it would have to start with a block of temporary GUC
settings to ensure it worked properly on user databases where various
settings may be in place. But that's a lot easier to manage than
subtle behavioural changes.