I often worry about this myself, and I highly agree with what some others are saying: find a problem/task that interests you or is worth solving - and work on it until it's solved, regardless of how difficult it is or inadequate it may make you feel by not understanding it at first. If you can't find a challenge, then maybe try going out of your way to add new feature /functionality to your CRUD apps. The challenges are always there if you keep an eye out.
Again,I really believe its more about preserveerance and interest, not inherent intelligence. If you can build and maintain CRUD apps without an issue, then with time and effort I am certain you could progress to other more interesting challenges given enough effort.
> find a problem/task that interests you or is worth solving - and work on it until it's solved, regardless of how difficult
I guess part of the problem is that those problems tend to be rare. The way I feel, is that if I have a problem, it's likely already been solved (in which case I'll just use that solution), or people much more intelligent than me are already working on it.
Another issue seems be be is that as time goes on, the problems I take interest in seem to become much more difficult to solve. This may be because they are technically complex, but can be for other reasons too. Often I don't even know what I need to be learning / researching to solve a problem, and that basically halts me.
You could consider talking more about what you are interested in, what makes you happy, and less about the problems with your current situation. If you have even a little bit of energy that you can put towards something which you care about more than what you're working on now, you can start to move your life in a new direction. Eventually you'll start to take some risks that you are not brave enough to take now, but you need to be positive. Don't worry about making drastic changes now, they can come when you're ready.
Complex problems are good if you care about them. A smart person working on it is a good sign. You just need to find a small way to contribute or even just to learn, you don't need to take over the world. Just do one small thing towards finding what you care about.
In short, don't worry about changing your current routine and job, try to find something you really care about and work more on that in your free time. Trust your gut.
Again,I really believe its more about preserveerance and interest, not inherent intelligence. If you can build and maintain CRUD apps without an issue, then with time and effort I am certain you could progress to other more interesting challenges given enough effort.