I don't pull punches when people ask a question like this. BEFORE you read any more of my post here, be prepared that you might not like what you read. Fair enough?
You SHOULD be unhappy with how this was tracked. I didn't really hear any instrument in the unmastered version that I thought sounded "right" for this genre, when compared to the "big time" guys in this genre. The guitars were somewhat close, but they sort of sound small and thin.
I would start by sound replacing all the drum parts. Even then, this won't ever sound "pro". But, you can get a lot closer.
Until the drums sound "right", everything else will just sound out of place.
The biggest difference between "demo's" and "major label" recordings is usually the drums.
I think also, your drummer is sort of a little, errrrrrrrrrr, sloppy. I am not hearing a "feel", or a tightness that this genre requires.
I don't know. I think you should start by trying to get the drums to sound bigger and more punchy.
It sounds like you have some control room issues, acoustically speaking. The unmastered mix is pretty muddy, and has a LOT of low midrange energy. Trying to master mixes like this pretty much sucks, but it isn't something eq can solve. Not EVERY instrument in the mix hass too much low mids, just some of them. So, if you eq out the low mids, the instruments that sounded fine will sound too thin.
Lay off the eq and compression. It is amazing, but a lot of guys end up with better results when they depend upon it less and less. This stuff sounds like it is processed to hell and back.
The first thing I do when mixing is just do a "push mix", just adjusting levels and panning. NO eq, compression, gating, effects. JUST volume and panning. I get the best mix I can this way. I burn a disk then start listening on some normal playback systems. This tell me EXACTLY what I need to know, which is how the original tracks sound. If the production was tracked well, you will find that you will have some "minor" complaints about how it all blends together. If it wasn't tracked well, you will have some MAJOR complaints about how it all blends together, and you are in trouble.
Every step of production is only as good as the step before:
If a musician can't play that well, he usually can't make the instrument sound all that great.
If a instrument doesn't sound all that great, it doesn't get recorded sounding that good.
If the sound that is recorded isn't all that great, it usually doesn't mix that well.
A bad mix is pretty hard to master.
A bad master certainly isn't going to sound very good on most playback systems.
Get it? It starts at the source, and works it's way down. A breakdown at ANY step pretty much screws every step after that. In between any of the above, there are technical/evironmental things that can screw things up too!
Anyway, I know this was an earful, and not always so encouraging, but, it sort of needed to be said. The best "tip or trick of the trade" I can offer you is to finish this one up, and start another recording trying things differently than you did on this one. I am not hearing minor little things that a little "hey, tweak this" type of advice is going to help you with the example you posted. That production sounds like it didn't get off on the right foot.
Good luck.