One of my problems was using crappy headphones to monitor my music.
When I first started out remixing, I had some super cheap $15 headphones that I was using. For some reason, I though what I heard on those headphones, would be what people hear when they listen to my mix. Turns out, I had WAY too much bass in my mixes, because I was overcompensating for the lack of a decent low frequency playback through those headphones. Now, I'm not saying "Go out and get some $200+ headphones," but a pair that will produce studio quality sound, which is especially important what making music.
Applying too much compression was another one for me. I often had problems with my basslines and drums sounding muddy and nasty. So now, whenever I notice clipping and whatnot, I try to reduce the volume on that instrument, or even the particular notes that cause it. Then, I apply light compression to hammer out any other issues that I might have missed.
Since I do not have a keyboard, I have trouble with pianos and guitars sounding mechanical in my songs. So, humanization is the key to fixing this. Making some notes play louder or softer than others, and tweaking the timing of the notes will help make it sound more like natural playing. I've even added some funky sounding notes here and there in some of my mixes to make it sound like I made a mistake. But, I wouldn't recommend doing that unless you get really good at "cover up sequencing."
I'll think of more later...