By careful rotation and selling one or two players at the end of the season then replacing them (I usually buy Nordgens or negotiated players one away from Scout), I keep my squad at a constant level.
Yes, I had one player who consistently was mine and the League top scorer but he was 4* at retirement aged 33 as I trained him hard throughout his career.
I accept 2* Academy players and sell them straight away. I do not bother with the 4* ones. One exception being a 4* Academy player I bought for a few tokens and trained him up to 7* that same morning.
All of my squad, including reserves are trained to at least 5*, so suspensions don't cause major problems in my squad. And I don't buy tokens.
Like I said, we all have our methods. Mine works for me every season. Yours clearly is not working this season.