I've been developing with php for about 2 years now, and I've gotten to the point where I'm getting sick of reinventing the wheel with every new project I take on.

I do have some reusable code, but honestly, I need to get better at this.

So, in your opinion, what is a better road to take.

1.
I start to modularize my code more, and start using more premade classes. Basically, I'd be gathering all the tools I need from various sources, then just sticking with those.

-or-

2.
I stick my neck out and try to learn a framework, and hope it will solve some of my problems. I have to say, I've never really used a framework, but from what I've seen, they seem to be like all the CMS's out there, in the sense that they are bloated with a thousand features that I don't need.

My primary goal is to speed up the coding process. For those of you who think I should pick a framework, what would you recommend?

Please keep in mind, that I'm a commercial programmer (will code for food ), so any technology that I go with has to comply with this.

Thanks!