We earned the credit, and we build up our reputation. I do not think those stuff are something others can give.
Back to your situation, you have built up your reputation by contributing something unique to the team, although the teamlead and the manager try very hard to downgrade it. Apparently they don't have the sense of secure when they deal with you.
You may be very senior and experienced in technical skills. However what you expect from the management is kinda junior, if I dare to be blunt. We can't pay our bills by those "credit", can we? Then why don't we have the generousity of sharing it? What is the benefit of keeping all the credit to oneself? My suggestion for you is to show your respect to the management, and share the credit; Once their anxieties are released, so is your frustration.