I struggled for a long time with something similar. I would always get bored of a character, so I had a huge roster of characters I played. Like, over half the cast.
Unfortunately I can't give you advice on how I turned it around and was able to start focusing on one character, because I don't really know what happened that caused me to finally be able to do so. But I can tell you what I think happened, and when I recognized it.
Over the years I've watched a lot of really high level players do amazing things with their characters. When you watch one of the best players in the world do something incredibly hype it can be very inspiring. This is how I chose my "mains" in the past, like I think a lot of people did. Back in Melee my favorite characters were Marth, Sheik, Falco, and Captain Falcon because of all the things the top players were able to do -- stuff that just blew my mind and made me go "OK that's it, I'm playing that character, I want to do that kinda stuff."
I think it's really important to be able to see some of the stuff a character is capable of, especially if you aren't very good at that character yet. For example, I suck at playing Yoshi. I do not gel with the character at all and have therefore never put any time into him. So if I pick up Yoshi, at first he will seem very clunky to me and frustrating and I might quit right away. But if I see someone like aMSa or Vectorman tear things up, that might inspire me to learn how they did the things they did, and then I'll have direction. I'll have goals and my Yoshi training will be more focused and ultimately more fruitful.
But the truth is while I have been very impressed with some of the stuff Yoshi players have done, the character simply isn't for me. And I found that out by playing him.
In my opinion the best thing to do is follow that strategy with every character you're remotely interested in. Find the highest caliber / most creative hype play you can find on YouTube or Twitch or whatever, and invest some time into that character and see if it works out for you. It may be a character you don't expect at all. Or it may be multiple characters. But the important part of this step is to narrow the field down to characters that you might actually end up fully maining later. To find out for sure if those 3 characters you listed in your OP are the right 3 to have narrowed down at this point. Because it might not be them.
Then when you're down to around 3 you can start trying to pick just 1 to focus on. For me this stage took the longest. And truthfully it just happened naturally, but I think both having a really good small roster and letting it happen naturally were the two key factors in why I'm so happy with the character I eventually settled on. I didn't try to force it, but I set up the conditions as best I could to expedite the process.
You could make a list of the things about the characters you like and dislike, or the stuff you find easy or hard. If you see a high level technique for your character and you're worried you might not be able to ever pull that off consistently, make that a factor. You don't have to necessarily make an actual list of all this stuff, but keep it in your head while you play. Pay attention to your thoughts and feelings as you play a character.
Then, with any luck, eventually you'll start playing one day and it will just click. If you feel the spark to play one character much more than any other character, go with it. If you feel yourself starting to get bored of the character, make a mental note of why you might think that and then maybe just stop playing for a while, or play the character in a totally different way you're not used to playing it. Don't switch right away to a fallback. Try to be as creative as you can with your character, discover weird stuff, explore. Go in the lab and just play around with 1 move, etc.
Good luck.