Here's the thing. I was going to come in here and say there's nothing wrong with that. That he has one character and plays it well, but he's still not a good actor, because good actors can always do good roles too.
But I think I'm wrong. Maybe. I'm not fully sure yet.
I consider Humphrey Bogart one of the best actors of all time, along with Cary Grant , but role to role, they both played a similar character each time. It doesn't degrade their abilities at all. But at the same time, Brad Pitt is not considered a 'movie star' like Tom Cruise despite being probably the biggest actor in the world, and has a huge range from. So perhaps being the role of 'movie star' requires that singularity in their character. Fantastic character actors like Peter Stormare or Gary Oldman are never considered that way, and they're the most incredible actors. The role of movie star might be a role itself. That makes sense, and my opinion might be tainted by my distaste for the character Tom Cruise plays.