I'm pretty far on Spanish but what I learn never sticks. Any suggestions?
You should expose your brain to spanish language. As the other commenter say. Listen music, watch movies, watch youtube videos. You don't really need to understand them yet. Just put a video after another.
I suggest this videos to you. These are a bunch of booktubers in spanish, so they only speak about books -in spanish of course- (the same one in these cases "The house of Hades").
Again, you don't really need to understand them at first, just let them talk and talk and talk. Eventually you'll catch the "rythm" of spanish.
It is time to get serious about learning and step up your game a bit. You need to start using your language. Make it part of you and it will not leave. Watch TV, movies, YouTube videos, listen to music, all in your target language. ¡Buena suerte!
Don't stress too much. Sometimes you need repetition. A LOT of repetition. Strengthen whenever a skill decays. You can strengthen more often, but that can lead to memorizing sentences, instead of concepts. Fifteen to twenty minutes a day at least, but don't keep going over and over the same thing. Your mind may be one of those that mulls things over in private before you can pull it out into your public space. If you think your mind is too full, stop doing new lessons for a few days. Flashcards are good, but again, only go through them once or twice a day. Eventually the words will stick, and they will stick longer than they will if you try to memorize them at one go.
I use handwritten 3x5 cards, cut in half (3x 2.5) to make twice as many. First I learn them from Spanish, and then in reverse. Once learned, I review them again a week later but mostly remember them all. I make these for any words that are missed from the lessons, flashcards or strengthening, except new ones that are obvious. These cards help greatly with my remembering of the words.
With more difficult words, it helps to write phrases on the cards, both sides, instead of just writing single words. This way you can see the context of the words, which helps you to remember them better.
I've just realized there are 1586 words to be learned to finish the tree, so now I am aiming for words, by setting a goal for each 100 word level. It's important to keep moving up the levels and skills, so aiming for 100 word levels is my progress motivator to eventually finish the tree, hopefully sooner than later.
In addition to what JamesB84 said, you might try to use a SRS software to help you remember things better. A popular online system is Memrise (memrise.com). I really like a software called Anki however.
Memory is something you can train up (at least to a certain degree). That is you can actually get better at remembering things you have learned.
I guess it might make sense to learn with someone so you can both practice speaking to each other regularly.