RE: DateTime fields timezone 1 day offset
The default behaviour is not always what you need, but if you change it globally, you'll break all the other places, won't you?
All times (and often days) in the whole system will be wrong, unless my current time has zero offset. For example, I choose that an order should be delivered in today at 9 PM, but the system will convert it to UTC and show that it should be delived tomorrow at 3 AM (because you don't want to change my timezone to UTC, therefore the offset of my timezone will be removed). Users would have to apply their offset to all values they see in the system, which sound ridiculous.
I think you should focus on the one field that you have a problem with.
Also, your solution won't work even for your scenario. If I create a user at 22/09/2022 1:00 AM, the UTC date will be 22/08 - exactly what you didn't want. Using UTC isn't the same thing as using the local time at the place of creation.
If training users isn't sufficient, you may want to store the original timezone and display date/time in that timezone. For example, InventSite has a timezone which is than used when calculating delivery date and such things
Or you may store the local time (e.g. 22/09/2022 at 5:00pm) without conversion to UTC and show it again without applying user's timezone offset). This can be done by setting Timezone Preference = No conversion on a datetime form control.