“I am an expert on these companies”: I have studied them for years and know how they work.
“I am an expert for these companies”: I work for them, they employ me, or they have hired me to be their expert (e.g., in court, or as a consultant).
I also agree with joedoolz47 regarding the use of “at” in certain cases. For example: “I am an expert at tennis” (seems to suggest that I play it very well) vs. “I am an expert on tennis” (suggesting I have studied the history or mechanics of the game).
You could also use “in”, e.g., for a field of study. For example: “I am an expert in (the field of) Medieval literature” vs. “I am an expert on [X, Y, or Z particular manuscript].”
Nominative is also possible. Instrumental is better for temporary things or things you can become. But it is quite blurry https://cs.wikipedia.org/wiki/Nominativ#Konkurence_nominativu_a_instrument%C3%A1lu
Best sentence ever in DL because of a personal memory :) When my youngest daughter was 8-9 years old, she saw me giving someone a business card and asked me what it was and developed hers on her own. Martina Alvarez Garcia, expert on almost everything :) I asked her if she was an expert on everything and she said that no, that she was too young, but that she knew a lot, thus, almost. I framed that business card and I still have it :) You made my day with this memory :) thanks a lot! And thanks a lot for all your work! I know that we ask too many questions and are grateful for all the effort you put. By the way, many times I am amazed by your expert knowledge of the language and its history. I can assure you that I don't have that knowledge of my own language!