It is possible that the noise each creature makes may have something to do with the name. According to the Online Etymology Dictionary, bull is used to describe male bovine and comes from a Germanic word meaning "to roar." Elk make a roaring or bugling sound, while deer make more of a bleating noise.
Buck refers to a male deer, and "buc" may have been used as a word for male goat. The word deer comes from the middle English word "der" according to American Heritage Dictionary of the English Language. Der referred to any member of the deer family, but around the year 1500, the word was narrowed down to what is now known as deer. Shakespeare used the word deer in one of his plays in 1605, so it is possible by that point the word meant the animal deer specifically rather than generally.
Words tended to become more specific as time passed. Elk had a similar fate, as it is derived from a Proto-Germanic word. The word for elk may also derive from earlier words to describe its red and brown fur color, according to the Online Etymology Dictionary. Both creatures have similar taxonomical family members and reproductive cycles. Elk are the larger of the two animals.