You can change this trait! I promise you, you're not stuck with it.

I'm about your age and I was a huge procrastinator and underachiever until only 2-3 years ago. Since then, mostly through "grit", I was able to acquire a job as a senior software engineer, despite having no degree, and not even owning a computer until I was 23.

I suspect you are like me in that you are much more interested in novelty and idea generation than in execution. I always had good ideas and did well on aptitude tests, but was seriously short on follow-through. I overcame my procrastination mainly following two principles:

1. Focus on one main project/goal at a time. Period. I know it sucks, but it's simply too easy to get distracted if you don't handcuff yourself. Every project has interesting parts and boring parts. If you have multiple projects, you end up thinking about the interesting part about some other project as soon as you get to a boring part of the first.

Figure that you'll do everything you want to do serially instead of in parallel. This makes it all the clearer how little time there is in life to do everything you want to do, and the realization is painful, but that's too bad. You aren't actually getting more done just because you've got multiple projects going on at the same time. In fact, for some (most?) of us, you're getting less done.

When you don't try to do anything seriously, it seems like you can do everything. It will be demoralizing to see how slow progress is when you're focusing on only one project. It's still worth it in the end, and you'll finally get a better understanding of the actual scope of your capabilities. This will allow you to make better decisions about time expenditure going forward.

Make the one thing you focus on have a definite end point. A goal. It can't be "get better at the piano". It has to be, "give a live performance".

Maybe some people can have multiple concurrent goals/projects. You can't. The sooner you face up to this, the better off you'll be. You'll feel like you're cutting off the boundless possibilities open to you. You ARE. That's life.

2. Do the boring parts. If you can learn to take pride in doing the boring parts, you will be formidable. A lot of idea people/dreamers never figure this out. Ideas are so damned fun to think about.

Count your blessings. In my opinion, it's easier to learn to do the boring parts than it is to become creative.

The advantage of focusing on one goal/project is that there's nowhere to hide when you get to the boring parts. If you want to finish, you have to do them. Your mind can't casually escape into thinking about the interesting part of another problem because there is no other problem. This is huge because the problem of avoiding boring parts is abstract, often gradual. It sneaks up on you. You've got to constantly be on guard for avoiding the boring parts of the project.

These days, I always know what my project is, and I can state it succinctly in one sentence. I keep it in my mind at all times so I know exactly where I'm going. In addition to the original inspiration, I take pride in powering through the dull intermediate steps of a project that most everyone else fall down on.