Your question is interesting. “Eat of” is an expression new to me. So I looked for the phrase in my dictionaries. OED says it is an archaic expression popular in Middle English (as Mr Micawber said). The ‘of’ is a relic of the Old English’s genitive case of nouns and gives a partitive sense to its object. “I ate the apple” is “I ate the whole of the apple”. But “I ate of the a