Actually, yes, you can be fired for being "too senior for your role". At least in my profession. You didn't mention what your profession was, and it doesn't sound like you are a programmer, but I will share my perspective, since that was one of the two questions that you asked.
In my company, you are expected to progress through the ranks within a time table. That means when you start out it is fine to need a lot of help and direction from the seniors in order to do your job, but each four year period of employment had better see you advance through the ranks or you will be laid off. I believe this is an imitation of the practice that the bigger employers have adopted (Google, and maybe Amazon as well). The ranks are carefully crafted, for example, rank 2 might be that you look for bugs to fix on your own and take some responsibility for improvement, on up to the highest level of non-management, which is being a company expert in some technology which the company needs.
If you don't advance, it is taken as a sign that you do not have the initiative or capability that they want to see in their employees, and you can be laid off because of that.
In any case, it sounds like your employer was hinting that you should be doing something which you are not doing. Since he didn't come right out and say what it was, my recommendation would be for you to ask for a meeting (a little formality makes you sound more serious) tell him you are a little worried about being passed by, and to ask him what you can do to improve. Be respectful and make it clear that you are listening to what he has to say. At the very least it will give him a better impression of you. It is better to be thought ambitious than to be a person who does only enough to "get by". And it may be that you can greatly improve your standing in the company and your salary by changing how you approach your work.