First off, I'm no expert and don't have all the answers for all the different situations, so maybe others can jump in with more advice.
I listened to your song on Soundclick and have a few ideas that might help.
Get the source sounding good, then mic it so it sounds the way you want through headphones or monitors. That's 90% of the challenge right there and it takes a long time to do. There's lots of discussions on micing techniques for guitar amps, acoustics, drums etc, in the mic, guitar and drums sections. I still don't get a good sound out of my acoustic.
Once you've recorded everything the way you want, time to eq to make them fit better. This is the part where you take away from the beautifully recorded track you just spent hours trying to obtain. For example, if the low end on the guitar is interfering with the bass, then you have to eq out the low end of the guitar. If the high end of the guitar is interfering with the snare, then you have to eq out the high end of the guitar. Each instrument should have its own sonic space. Allocate a certain part of the freq spectrum to each instrument. If you have mud, EQ out the mud (300hz - 700hz??). If you have sizzle, eq out the high end (5khz - 8khz??).
If parts still overlap and you don't want to notch too much away from a track, then use the stereo field and panning to separate them. A general rule of thumb is to keep the main beat drivers in the middle; Kick, snare, Bass. Also the main melody maker, lead solo's and vox. Everything else can get "thrown" to the sides, but do so judiciously.
On the track I listened to, you have a lot of extraneous noise, mic moving, you moving, something squealing. Gotta avoid that stuff the best you can.
Like I said, I'm no expert, but maybe this will help you to get some separation between your instruments. Hopefully, others can jump in with better advice.
have fun.