Here's why English names are commonly used. Many Chinese characters are hard to pronounce except by people trained in Chinese, one of the most difficult languages in the world. I would estimate that more than half of Chinese names, more than half of which are of three characters, contain at least one phoneme a westerner finds difficult to pronounce. Of all 21 pinyin initials, q, x, zh, r, z, c, and s when followed by i, and j, ch, sh to some extent, pose a challenge. Among the finals, e, yu, yue and probably a few others are often mispronounced. Mispronunciation goes beyond what I list here. Many years ago I had a master car mechanic friend named Ge Xun. One day another buddy of mine and I tried hard to solve a car problem with no success. We decided to call Mr. Ge, even though he warned us not to call him at work unless there was a crisis. When the phone was picked up by a guy in his shop, I realized I had no way to tell him my friend's name as said in Chinese. So I had to spell out each letter. Later my friend told me he had an English name George. It makes perfect sense for those with such Chinese names to have English names just to make everybody's life easier.
Now let's explain why Chinese choose uncommon English names. According to a China Daily article, So Many People, So Few Surnames, "there are about ... 4,000 to 6,000 [Chinese surnames], of which about 1,000 are most frequently used", while Mark Antony Lower's English Surnames: An Essay on Family Nomenclature, Vol. I (p. xii-xiii) claims, even in 1849, that there are about thirty to forty thousand English surnames. In addition to the number difference, Chinese surnames are much more concentrated on the common ones; for example, "In northern China, Wang (王) is the most common surname, being shared by 9.9% of the population" (Wikipedia). English surnames, even as common as "Johnson", would not enjoy a dominant 10% distribution. A much larger number and a greater variety of English than Chinese names make it possible that two people with English surnames can choose a common given name with little concern for the same combination of a common given name and surname. You may have two John's in office. But it's unlikely to have two John Smith's. But if two Chinese are both called John, you may end up with two John Wang's in the cubicles not far from yours. The solution taken by Chinese immigrants to the English speaking countries or Chinese workers in a mostly English speaking environment is to use less common given names. "John" is a bad one. "Nicholas" may be better. Unfortunately, "Dragon" is bad, too, from a different direction.
So what's the best solution? There's no ideal one. Let's focus on given names and forget about surnames for now. It has to start from birth. For new or would-be parents, here's my advice. If you anticipate your child to live or work in a global environment, give your child a Chinese name whose pinyin is easy for non-Chinese to pronounce. That is, avoid names such as Ge, or Xun, or Qiu, or Zhong. (Refer to the list above.) Then the child never needs an English name just for easy pronunciation. He or she may still consider an English name, but for a different purpose: easy for his hundreds of business clients to remember his name, for instance.
P.S. A frequently asked question is, Why don't Japanese or Indians living in the US choose English names? One reason is that Latinized Japanese or Indian names are never difficult to pronounce. Secondly, they never had this tradition. Chinese immigrants, aside from the pronunciation perspective, probably follow the tradition established by early Chinese immigrants, mostly from southern China and Taiwan. But whether the tradition, or lack of, is actually just an effect of the pronunciation difficulty may need more research to find out.