If you add the DLL to the exe IAT (Import Address Table) for example using CFF Explorer (http://www.ntcore.com/exsuite.php) it will load the dll (and call its dllmain) before any code in the exe is executed.
If you modify the steam dllmain using ollydbg or ida you can simply call the init func there laugh
You can do this also using a 3dgs plugin dll because those are also executed before device initialization.

I dont know why there should be problems with the launcher.
Let steam start the launcher and keep the process open but hidden.
The Launcher closes itself when the game process is also closed and it will look like its working as it should for steam grin