BUG: to_json incorrectly localizes tz-naive datetimes to UTC
- [ ] closes #38760 (Replace xxxx with the Github issue number)
- [ ] [Tests added and passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#writing-tests) if fixing a bug or adding a new feature
- [ ] All [code checks passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#pre-commit).
- [ ] Added an entry in the latest `doc/source/whatsnew/vX.X.X.rst` file if fixing a bug or adding a new feature.

Sorry for the low quality code. I was prototyping quickly and forgot to clean up afterwards.

Regarding https://github.com/pandas-dev/pandas/pull/46730/#discussion_r856421763, I think I'll stick to the current approach for now. Existing perf benchmarks surprisingly seem unaffected by this change, so not sure its worth pursuing at least for now(it might be worth doing for the tz-aware case later). thanks @lithomas1 very nice!

I believe there is a de-duplication followup (values_for_json) if you can