Got pointed to this thread by way of the Factorio Discord when I had (and implemented) an almost identical idea for an alternate way to handle multiple mods. So +1 to this from me.
The proposed alternate mod-list.json and mod-settings.dat would fulfill a currently blank spot in between using the in-game sync mods function, bundling them up in modpacks, and using the command line parameter to specify a different path.
The currently available --modpath is great for ensuring that there is compatibility between one or more mods and the base game, or with other mods.
However, from what I can see, more often than not --modpath is instead used in a similar fashion to several modpacks: To simply bundle up a certain configuration of mods together, and minimize the time spent switching between these configurations. The reason most people use --modpath over a modpack or the readily-available sync mods with save function is that --modpath eliminates one entire round of booting up the game, saving additional time.
The --modpath solution, however, can very easily lead to bloat and clutter if the same mods are used many times over. Chances are high that any of the most downloaded and popular mods would be culprits for this, along with Quality-of-Life mods in general. There are even mods which have secondary mods to ensure compatibility between them and a third mod! And whenever a new version of a mod (or mods) that falls into this category is released, updating them can easily become a chore as one has to either repeatedly download the new version, or manually copy the updated version between each different alternate modpath.
While mods are generally small and many computers today have plenty of available storage, this remains an inefficient use of both system resources and time. Most of the time, the latest version of a mod or mods is all that is desired and compatibility is not an issue.
Which leads to the proposed solution of an alternate mod-list and mod-settings:
These two files determine what mods are enabled and what settings are used for said mods. For the average use-case, simply changing these two files is the only necessary step. I was actually pointed to the thread when I posted my script
https://github.com/Ocean-Phantom/Factor ... n-Switcher as an automated way to do exactly that. All it does is make a copy of these two files, store them in a reasonably unique path based on date and time, and overwrite these same files in the default folder with the relevant copy when desired (It does falls one step short and doesn't actually launch the game when it's done.

)
Both mod-list and mod-settings combined would take up far less space than many mods (especially those that add new sprites to the game), and simplify the update process as the mods are naturally synced.
In summary: Simply switching the list active mods and the relevant settings is far more efficient for the use case of switching mods without having to first launch the game. --modpath is far better suited to cases where compatibility is a potential issue, making it something of an edge-case that is being used unnecessarily as a solution to a general case.