I made a video explaining the details of a custom overworld in your own Singleplayer world, without the use of datapacks or modpacks. While there isn't a way to edit the time and weather directly (since this method only adds the world as a dimension), I made it possible to use only an NBT editor, and some folders to transfer a little bit of data.
Despite the video being a couple years old, this method still works on the latest releases of the game, so don't worry if it says 1.18. Because the filesystem for the worlds have not changed one bit. Also, it might be a bit sloppy, but all you got to do is create two worlds, copy a specific value in the world .dat data using the NBT editor, put it in the world you want it to appear in, and use the three folders called Region, Entities, and Data and put that into the dimensions folder on your main world after you load your dimension for the first time. (optional, but if you wanted your data to be loaded from the other world you generated).
My video tutorial can explain it all:
https://youtu.be/xbD76NCVX0Q?si=-Vx9StmkgOZ6-Go0