Smash isn't a typical fighting game
This. Smash is just.. different, you don't need to know much about fighting games to get on it.
I know it's kind of long a long read, and I apologize in advance for that, but I wanted to make sure I wrote everthing I could think of. I also hope it's clear enough, because it's really hard to explain, and english is not my first language. Let me know if you have any questions about unclear things in my post. Hope it helps.
There are basically two levels to smash:
1. On the surface you have the technical skill. Everyone can get excellent at it. You just have to train a lot, and be able to combo, to do things like pivot grabs, etc. It's just about learning the imputs, and you don't even think about it when you get good enough.
There's not really a solution for this one, you just have to practice. Spend time in training, and try to do everything perfectly. Practice in real situations too. I don't know what else to say about it, because it's pretty much all you can do.
2. Then, you have the psychological side of the game. This is where it gets interesting. Since there are so many options you can choose from at any moment in the match, it becomes a mindgame. When you watch high level play, this is especially apparent. The player who wins is basically the player who can read the other player the best. This is why a good player can beat a medium player even in a really bad MU.
As you said, knowing your own character, as well as other characters, is probably the most important step. When you know what your character can do, and what the other can do, you know the options of each player, and can proceed to play according to what you think is best.
The player who is at a disadvantage will usually play more defensively, but that doesn't mean you should fish for the kill, just let it come to you. If you try to get greedy it's easier to make an unsafe play, and get punished for it. So you have to know when to go in or not.
There's two ways you can get better at this.
First, learn the game. What I mean by this is, you should always try to register new data about the different characters, what works against a certain character, what doesnt, what a certain character can do in such a situation, etc. Even if they are not your main, it's useful to know this stuff for when you face a player using the character. Of course, it takes dedication because the game is very diverse, so it's indeed a slow process. Don't expect to become an expert in a week.
Then, learn to read. Everyone has certain habits, certain patterns that they unconsciously repeat during a match. Some people roll a lot, other like to grab a lot, other will repeat a certain combo over and over, etc. There's no trick to really learn how to read, you once again have to practice. Playing against better players is great, because it forces you to read well. If you don't read well enough, you lose. It's as simple as that. This is also why training against a CPU is not a good way to go; they don't learn how to adapt, so once you know their habits, it's extremely easy and you stop improving.
Good players know how to vary their game. If you watch high level tournaments it's easy to see. Even in a 3 games set, you see a huge change in the players' styles as they learn the other's habits. To vary your game, you have to know your options, and to know your options, you have to know your character, and the other character.
Of course, everyone plays differently, so what you learn in a fight might not be useful against a different opponent, because they might not play the same way at all. But when they do something you've already seen and know how to counter, you won't have trouble against it anymore.
I know it may sound easy when explained like that, but it's actually really hard to do in real time. Just practice again and again and again. Learning what you do wrong is also immensely helpful. When you try something and it doesnt work, stop doing it. If you have an habit of rolling a lot, and you always get punished by everyone for doing so, you have to force yourself to stop rolling. It takes control to do it, and you might find yourself rolling from time to time, but the more aware you are of it, the more you'll progress and stop doing it (Note that rolls are not necesarily a bad thing, but many beginners tend to roll too much, so it's a good example). Playing against a better player who can tell you what you do wrong is the way to go.
Now, about what you can do. To tell you the truth: not much. If they want to get better, THEY have to make themselves better. Try to give them tips, teach them new things. Tell them when they don't do good. Be careful though, many people can take it in a negative way, but they have to understand that criticism helps you to learn if it's done intelligently. They have to do the rest, practice, and they need to be WILLING to get better. And again, it takes time. It's normal not to see immediate results. Becoming a top player takes years, so to get discouraged because you don't see any progress is easy. You ARE progressing at all time, you just have to know it, and to do it in an efficient way.
That's pretty much it.
I'm aware it doesn't really (well kind of, but maybe not as you thought it would) answer your question, but if they want to get better, they really just have to understand all this. You can pretty much only guide them and make sure they learn things the ''right'' way. And since you're better, play against them. It doesn't matter if you're not perfect, all of you will still progress a lot. Alternatively, you guys can try to go to a tournament(s). It's great since you fight high level players, and it forces you to play in a somewhat more ''serious'' and rewarding way than when chilling with friends. And the Smash community is great, it's a good way to meet other players, share experiences, and mutually progress.