Isn't it adding delay to EVERYTHING? To the audio AND the video? So if you have everything in sync, it should work correctly? Or isn't this exactly true? I thought that if you have everything in sync before it goes into the Elgato via HDMI, then u should be fine. So what you wanna do is, add your microphone sound to your HDMI out port of your videocard, so it automatically adds that sound to the video which then is going into the Elgato via HDMI and not via the software. That way Elgato's software or OBS doesnt have to deal with the delay stuff and everything should be in sync. This isn't easy to setup tho, and can be done with a neat little program called 'virtual audio cable' or 'noisegator' which can be found here:
http://sourceforge.net/projects/noisegator/
I'm doing stuff like that and i still have a little delay in my mic, which i need to work out, but it's working just fine. It's not like it's a 5 second delay or something.
Maybe you can work stuff out with virtual audio cable if you want to route the mic to a different port aswell. But when u do stuff like this, it always creates some sort of delay. You can't get away from that.