Not GP but I share similar experiences as you. Started coding as a teenager, but after I got my first job I did similar things as you for a very long time on and off until only a few years ago.
In part, it's good that you're trying out new things. That part should always be something we do. But the issue is when you don't have developed taste and principles to discriminate between things that just sound interesting and things you actually want to explore.
For me the solution has been to develop a small set of important values by asking fundamental questions. Why do I program? What does emotionally satisfy me (fun/pride/learning)? What is valuable for my users? What are computers for? What makes a good program?
Ask questions like that and you get a list of important things that you focus on.
Whenever I see something new, it first has to get through my value filter.
My reading, learning and tinkering list is still growing slightly faster than it shrinks. But I'm much more content and happy with what I actually end up doing or reading.