I am a certified English teacher.
My immediate reaction to the two sentences was wondering more about the context. The two sentences contain nuances of speech.
"Could somebody give me some food for my dog?" sounds needy. It sounds as though the person has no resources and is asking someone to donate dog food to him.
"May I have some food for my dog?" indicates that the food is available and that the person may be willing to pay for it.
Neither of the sentences seems to reflect that the person is in a store that stocks dog food. I have the sense that the person has wandered into a situation where there are no adequate provisions for pets.
If I were in the grocery, I would say, "I need some dog food," or "I want to buy some dog food."
I would certainly like to hear what other reactions there are to these two sentences!