The difference in meaning is subtle, and it may be too subtle to matter in many instances. However, this lesson is on the preteríto perfecto, so DL wants the English in the present perfect.
You would never say "tengo comido mucho". Tener means "to have" as in "to possess", it would not be used as part of a "perfect tense" (I have/had/will have/would have .... e.g. I have played, I would have eaten, I had slept, etc...)