The reason is that Catholics believe in the True Presence. Protestants do not.
Additionally, Catholics must fast and be in a state of grace to receive Communion.
At most weddings and funerals (occasions when non-Catholics may be attending the Mass), the priests usually announce that Communion is limited to Catholics in order to avoid the embarassment that you felt. Also, the missalettes in the pews also list the rules for reception of Communion, generally inside the back cover.
I am sorry for your predicament. It should not have happened.
Lutherans believe, teach, and confess the Real Presence of Christ's Body and Blood in the Sacrament. See my post 46.
You are painting with too wide a brush. Lutherans believe in the True Presence. Like Catholics, we do practice closed communion, not because we are "holier than thou" but to protect those who may not understand what accepting the sacrament means.