From what I understand, it's to prevent application level errors where you do send it with a timezone, as you mentioned. This avoids the conversion (since it is stored as UTC) at the application level
It's changing what you send and you only get back what you expect if you are explicit in your SQL statements or have the same timezone in the connection.
It's an extra risk that offers nothing. Just use UTC in your code, there's no reason not to and is much better advice. If you don't use UTC, at least you can still recover and convert easily if you are using the standard `timestamp` type since it's exactly what you saved.
The `timestamptz` type is a mistake and one of the few things where PG gets overly ambitious in helping, only to cause more pain that it's worth.