How to separate overlapping curves more effectively?
The problem here isn't your chosen neural network architecture, it's that you're working with literally unseparatable data.

There's isn't any practical way to distinguish observations near the mode of multiple distributions that share a mode. The best you can do is approximate the distance from the mode at which the high variance distribution is more likely than the low variance distribution, and classify observations relative to that. You can do that analytically, and your neural network isn't going to do any better. 

Have you tried visualizing your data to better understand what you're tasking your model with here? This is a bit more extreme than "kind of overlapping" distributions.