Why are 'beef' and 'pork' and 'mutton' used to refer to the meat of cows and pigs and sheep? Other animals keep the same name. Is it just some weird preference in the English language?
This is fundamentally a class distinction.
With any given amount of land and labor, more food value can be created from growing grain and vegetables than from growing animals for meat. In the medieval economy, the local lord had title to all the land and had a large amount of labor at his disposal as a sort of tax on his peasant subjects. The lord could thus afford to invest a portion of that land and labor into growing meat for his table. But the ordinary peasant family, with only their own labor and a small allotment of land, could not afford meat; they instead ate grain and vegetables.
For a couple of centuries after the Norman Conquest in 1066, the ruling class of England spoke mostly French, and spoke of the meat they ate using the French words for the animals: boeuf, porc, mouton. The peasants whose labor went into raising these animals for their lords' tables continued to call these animals by their native English names: cow, pig, sheep. And the lexical distinction remained after the landlord class adopted English. They had spoken of the food for several generations as beef, pork, mutton; and there was no corresponding term in English for the food, since the English words designated primarily the animal.
'Beef', 'pork' and 'mutton' were originally the French words for cows, pigs and sheep. 'Cow', 'pig', and 'sheep' were originally Anglo-Saxon.
After the Norman Conquest, the French-speaking Lord would say 'Beef!', and the Anglo-Saxon peasant would go off and kill a cow.
This class distinction between the Germanic and Latin roots of modern English is all over the language. That's why it's rude to say 'fuck' and polite to say 'intercourse'. Although of course really well-educated people countersignal and just say 'fuck' anyway.
There is no reason for it, it's just kind of a euphemism. If you've ever seen the movie Babe, you can understand why we don't want to think of our bacon as pig. I actually find it a more odd that we say lamb and chicken than that we say pork and beef.