Why do Catholics have to fast before Communion if Jesus gave the Eucharist at the end of the Last Supper (when they had already eaten the ordinary meal)?
First of all, we don’t know precisely at what point during the Last Supper that Jesus gave his disciples Communion. For all we know at this point, it may have been *before *the ritual Seder meal. But let’s presume, for the sake of argument, that it was after.
The eucharistic fast is a discipline, not a doctrine, of the Church that is meant to help Catholics prepare for the awesome privilege of receiving Christ body, blood, soul, and divinity. As a discipline, it can be modified or abolished. Indeed, just in the last century, the eucharistic fast was significantly modified from several hours to just one.
However, it is likely that the eucharistic fast became an early discipline of the Church, if this passage by the apostle Paul is anything to go by:
For, in the first place, when you assemble as a church, I hear that there are divisions among you; and I partly believe it, for there must be factions among you in order that those who are genuine among you may be recognized. When you meet together, it is not the Lord’s supper that you eat. For in eating, each one goes ahead with his own meal, and one is hungry and another is drunk. What! Do you not have houses to eat and drink in? Or do you despise the church of God and humiliate those who have nothing? What shall I say to you? Shall I commend you in this? No, I will not. … So then, my brethren, when you come together to eat, wait for one another – if any one is hungry, let him eat at home – lest you come together to be condemned. About the other things I will give directions when I come (1 Cor. 11:18-22, 33-34).