Since you're asking, I will tell you what I would do, and what you will think is blasphemy: I would take your dad's offer. I would start working with him.
I'm sure you're a very good coder; don't get me wrong. But despite what you'll hear, there are a lot of them out there. If you think you're the best programmer around, it just means you haven't looked very hard.
Remember, software is never an end but always a means to an end. A bridge isn't metal and concrete, it's something that connect places. Software is about solving problems, and sometimes creating new bridges where no one thought to connect before. It's all in the service of something. In other words, stop learning how to make the metal and concrete of bridges and look up from your computer and learn what you could connect with them. (Yes, get off of your computer. Turn it off. Go at least a week without looking at it -- try to go a month or two.)
Learn what your dad does, learn how the business is run, and then find efficiencies and ways to make it better using software. You'll be making money and opening your mind.
You're 26 and good at software, and you're ambitious. That's great. But take a break. Step away. I have a sense that what's stopping you is you. Change who you are and you might just find the way that was blocked before opening up.
Since you're asking, that's what I would do.