You could try doing what I'm doing, that is if you like stats and data.
When I play, I record every single match I do. I record my current GSP (to the nearest hundred thousand), the fighter I fought, whether or not I won, and whether or not I elected to rematch, and, finally, whether or not they rematched.
I've turned a "GSP grind" into a data collection project, where every time I play I get to add to my dataset. Even if I have a bad night, I still got more data, and got closer to my goal of formulating my own personal matchup chart.
Here's a summary table of the stats I've collected so far on various matchups, and some fighters I've fought enough times to where it's starting to become, potentially, statistically significant:
I do very well vs Ike. I do ok vs Ganondorf, actually, worse than I'd expect. I do well vs Incineroar. Krool and Simon give me more trouble than I expected. And as I collect more matches, itll only make these cases more solid.
What I've managed to do is turn the stagnant-feeling GSP grind into something where I feel like I make progress every time I play, even if I go down in GSP. At least, for me, this has made playing online a lot less frustrating because I focus on collecting my data and expanding and improving upon my sample size, rather than focus on my GSP and whether or not I'm winning. For example, my mentality has shifted from "Ugh, another annoying Simon. Time to get spammed by axes and lose" to "Hmm, another Simon. Well, this is further solidifying in my data that this is probably a bad matchup for Ridley, or, atleast, a bad matchup for my Ridley."
Any interest in doing something like this, soviet? I could help show you how to set up the spreadsheet.