I don't believe OBS offers anything that I know of for doing this. What I think is happening (not sure) is that the audio is already mixed together when coming from your PC to your Scarlett, so since you are telling OBS to get the audio from your Scarlett, that's why they are mixed. So, you'd have to separate the tracks before they reach your Scarlett and tell OBS to record them before they get there.
I use VB-Audio Voicemeeter Banana (free) and their Virtual Audio Cables (1 is free, 2 more are donationware) to handle separating audio from different sources. Voicemeeter is basically a digital mixing board. You can have multiple inputs (microphones, music, etc) and software inputs (desktop audio, game audio) and then send it out in multiple ways depending how you want it. The Virtual Audio Cables basically act like a separate hardware audio source for your virtual audio sources (Discord, TS, some music players, etc).
This is how I set up my audio and it should work for you.
Download Voicemeeter Banana, install, restart.
Open your System Sounds and in the Playback tab set Voicemeeter Input as your Default device. This will tell Windows to route all audio to this device. You will not hear any audio from your computer right now.
Open Voicemeeter. The left are your Hardware inputs like Microphones, sound cards, etc. The center is Virtual Inputs which is anything that sends audio to the Voicemeeter Input (currently your desktop audio) or Voicemeeter Aux Input. The right is all your outputs, which is nothing currently.
On the right, at the top you'll see A1, A2, and A3. Click A1 and set that to your Scarlett. Right now, no audio will come from your computer. Under Voicemeter VAIO, click A1 so it's Green. That means that audio from this channel will be sent to A1. Now you should be able to hear audio from your computer in your headset.
Open OBS and go into your Audio settings. Microphone can stay the same. Change Desktop Audio Device to "Voicemeter Input".
Open Discord and in your Audio Settings, set your Output/Speakers as "Voicemeeter AUX Input". This is redirecting Discord audio through this channel. You will not hear any Discord audio right now.
In Voicemeeter, under Voicemeeter AUX, click A1 so it's Green. You should now hear Discord Audio in your headset.
In OBS, set Desktop Audio Device 2 as "Voicemeeter Aux Input".
Optional. Rename channels for clarity. In Voicemeeter, right click above Voicemeeter VAIO, type Desktop, and hit enter. Right click over Voicemeeter AUX, type Discord, and hit enter. If you wish to undo, right click name, delete, and hit enter on both to return the original text.
You aren't really using Voicemeeter for it's mixing capabilities with this setup, but it allows you to separate the channels which is what seems to be your problem. I personally send my microphone through Voicemeeter as Input 1, add a Noise Gate, Compression, and EQ, before sending that out to OBS or Discord or my recording software. See the image below for my setup.
For your 2 microphone set up future plans, do you plan to plug both into your Scarlett?
Quick Googling talked about using Scarletts ASIO with Voicemeeter and setting up the hardware inputs in Voicemeeter to separate out the different channels. Setting your A1 output as ASIO Scarlet. Then go into the Voicemeeter Menu > System Settings, you should be able to "Patch ASIO inputs to strip" as 1-1 and 2-2 for both microphones. That will set Hardware Input 1 as your first microphone and Hardware Input 2 as your second Microphone. Under Input 1, click B1 and under Input 2, click B2. Then in OBS, change Mic to Voicemeeter Output and set Mic 2 as Voicemeeter Aux Output.
This video isn't in English, but it shows how to set up the ASIO in Voicemeeter. There is even a comment from VB-Audio briefly explaining what the guy is saying.
https://www.youtube.com/watch?v=ODJ2JukQF98
better yet if I could hear those at separate volumes VS the viewers in stream.
This is exactly what I use Voicemeeter for. My headphone audio is set at -21dB in Voicemeeter but I have the full strength volume going to my stream. I can even stop the music audio from going to my headset yet still have OBS pick it up.
You might want to check out Audio Router (Google it, download Github link). It allows you to reroute your audio to whatever device you want so you can separate out sources you normally can't. Chrome and Spotify, for instance, is generally just sent to your default audio device, but Audio Router can change that. I use it with VB Virtual Cables.
For example, say you have a Youtube Playlist running on Chrome, but want to separate it from your game audio so you can upload highlights of your stream to without the music but with the game audio.
In Audio Router, you set Chrome to play through a Virtual Cable. Then in Voicemeeter, set a Hardware input to take in that Virtual Cable and send it to your headset so you can hear it (or not). Then in OBS, set the Virtual Cable as your Aux device 2. In Output, change to Advanced, then set Streaming as Track 1 and Recording as Track 2. Then in Edit > Advanced Audio Settings, make sure everything is check for Track 1, and only Mic and desktop audio are checked for Track 2.
Now, when you stream, mic, game audio, and music all get sent out, but only the mic and game audio are recorded.
Audio Router is a bit buggy, it doesn't save your settings so you have to set it every time, and it's visual interface doesn't always update. But if you change to list view, it works well and updates fine. It's a free program though so I can't really complain that it isn't perfect when it does exactly what I want it to do. There may be other programs out there that do the same, but I haven't come across anything yet especially a free program.