Roald Dahl says it himself before the story even begins; Charlie Bucket is "The hero." At times our hero does a lot, as in the early chapters, where we follow Charlie pretty closely. But at the factory, it's hard not to notice that Charlie fades to the background a bit. Of course he's always there, observing and commenting on the crazy antics of everyone else. And every once in a while, he marvels at the incredible sights. But for much of the story, he's not in the center of the action.
So why should we consider him the protagonist, then? We've got one very good reason. Every step of the way, we readers are rooting for Charlie. We see him struggle just to fill his stomach in the beginning, and by the end, we're elated to learn that his family will never be hungry again. If that's not a rags-to-riches story, then we don't know what is.