Both "termina" and "finisce" are accepted as translations of "ends." Are Italians equally likely to use either one in this situation, or is there some subtle difference?
I can't answer the Italian question, but based on English subtleties, it seems like the meal should end but I should finish it. The meal doesn't finish itself. I hope someone has an answer.
I'm no expert but I'm pretty sure that cibo means food, and saying that "The food ends with coffee" really doesn't make nearly as much sense. "Meal" is more of an event while "food" is more of a noun, IMHO.