One doesn't say that because the banana never eats until and unless it is personified into male or female wherein your translation to this sentence would be correct.
But since it is not so, and there is a खाता there suggesting a male eats the banana because of the आ की मात्रा (aa ki matra) that is generally used to masculine words.
If there would be a खाती it would suggest a female is eating a banana
Hindi has a different sentence structure than english. Just because the words for 'he', 'banana' and 'eats' are in that order does not mean that's how it will be translated. As a native speaker, when i hear "vah kela khata hai", it is clear that 'kela' is the object and 'vah' is the subject doing the verb i.e "khata hai".
In English, I eat banana is grammatically wrong.
In Hindi, मैं केला खाता हूँ is not wrong. If someone says it, you have to decipher from the context if he means "a" or "the". However he could also explicitly use एक if he wanted to and that would be correct too.
So if you see a Hindi sentence without an article, you can translate it in English with both A and The since you don't have the full context.
Is there any difference between "he eats a/the banana" and the English concept "he eats banana" as in yeah, he isn't allergic to it. We would use that construction in "he drinks beer" as opposed to "He drinks a/the beer". Would you build a different construction in Hindi given no article is demanded here or do you have to use context? and say, "No, he isn't drinking a beer now, but he DOES drink it sometimes".
This is exactly what I'm asking myself. My idea was, that for eat it should be khata and for eating khata hai, or the reverse, because here it is with hai for eat. Another solution could be, that verbs are alway connected with hain. Maybe somebody can explain the difference?