First to address the OP:
The thing that has helped me out the most recently is talking to other, better smashers, about how they play and think, and it has in turn helped me with reading and mindgaming, the thing I was lacking the most.
This weekend I was at a tourny, and talked to a Ganon player who got 7th (Considering Judge, Lain, M2K, Blue Rogue, and 3 more Power Ranked players from our state were there, as well as other good players, getting 7th with just Ganon is **** impressive!). I was asking him how he managed to make people walk into his attacks as much as he does, and he basically explained his whole mindset to me before we MMed then friendlied. I tried implementing this mindset during our matches, and he commented on how it was scary how fast I was improving just during those matches.
So basically... play more people, and ask them for advice both on your game and on their mindset. It really helps.
Now for the quotes:
Let him approach you? Everytime MK approaches, it seems to be by either tornado, drill rush, short hop d-airs, or something else that are tormenting. I guess that eliminates a huge part of the grab game to get bairs in.
Approaching with both Tornado and Drill Rush? Those are both very punishable options. Dairs are a bit harder to deal with, but still beatable (especially since Uair has more disjoincted range than MK's Dair).
Basically, play the MU more often to learn your options against everything.
Here's a novel idea. Stop letting yourself get counter picked.
MK and Snake have advantages on you. [40-60 match ups.] This means, you don't just have to be good enough to beat your opponent, but you need to be vastly better than them at the match up to win. Now, if you would instead pick D3 against Snake, and MK against MK, you would find that you are going to start winning the matches that you should win.
If you pick a new character for every 60-40 MU, you're going to get destroyed. You won't ever learn all those characters as well as your opponent knows their mains. Also, CPing MK vs MK is stupid unless you main/second MK, or your main has an almost impossible MU with him. EVERYONE who even dabbles in MK knows that MU.
"A little better" in high levels of play actually is a vast difference in skill level. Being "a little better" than a noob Snake isn't noteworthy, but being "a little better" than Mew2King's Meta Knight would be staggering. Playing with a handicap, i.e. with poor match-ups, is a very important part of serious competition.
Small advantages, while you are right, make a difference, it is not big enough to make up for the fact that you'd be playing a character you are less familiar with if you get a new character for every slightly bad MU.