Because of the Norman invasion. 1066 and all that. (edit: specifically, after a time the peasants spoke English and looked after the animals, the nobility spoke french and named the food, so we got the English words for the animals and the French words for most of the farm animals were used for the food made from them)
The French eating it called it beef, the English raising it called it cow. The french didn't call it roast cow because they were eating it as food, thus beef.