I think that Christopher Columbus was a horrible human being who had no qualms with slavery or killing off native people when he landed in the Americas. I also think that his voyage was a big deal to them at the time. It must have been an amazing feat to discover a whole new world. (He wasn't the first, but they believed so)
Although he may overshadow travelers and explorers such as Amerigo Vespucci and Magellan, Christopher Columbus was a pioneer. It's important to support pioneers, because they have to pave the way for others. So a coat of arms is definitely in line. It's like criticizing the entire Imperialist movement, it is complex.
People received coats of arms for far less than opening up another half of the world to trade. People claim that Columbus didn't 'discover' the Western hemisphere (obviously true), but people fail to realize that discovery in this sense specifically involves mapping out using standard cartography tools and conventions, something never done previously.
Christopher Columbus does merit a coat of arms on the Spanish throne simply because he opened up an entirely new continent for Europeans to conquer. Yes, Columbus caused the decimation of entire cultures in North and South America. Yet at the time, the Spanish throne recognized he discovered an entirely new area to dominate.
Yes, the achievements of Christopher Columbus and his timeline were significant enough to merit him his own coat of arms from the Spanish throne, because he accomplished something rare, that gained a lot of prestige for the Spanish throne. Saying that Christopher Columbus did not accomplish anything important is like saying the second person to the moon didn't accomplish anything either. Columbus deserves his accolades.