"Who has food?"
Translation:למי יש אוכל?
It's just grammatically incorrect. It doesn't really make sense without yesh
Why can't you say it without יש? Simply "lemi okhel?" Is it because it would be understood as "Who is the food for?" or the sentence doesn't make sense without יש?
In an affirmative sentence, you can say לאברהם אוכל instead of לאברהם יש אוכל. I think this is the biblical form. It was used in modern Hebrew (like in books from 80+ years ago), now sounds very formal and archaic. Not sure how it would work in interrogative. Theoretically maybe it does, but not sure I ever heard or read it.
ll -יש ל is the Hebrew equivalent of "to have", so "Who has" = למי יש. Your suggestion, ממי יש, means something like "From whom is there food?".