He can successfully play serve-and-volley grass tennis, fast hard court attacking tennis, fast hard court baseline tennis, slow hard court baseline tennis, and he's even good at playing on clay. Nadal and Djokovic can only play slow court baseline tennis.
Again, better /= more versatile. This is not hard. Nadal beats Federer mostly because of ONE primary tactic. He doesn't beat him with variety. Nadal doesn't really beat anyone with variety. Usually he just stays at the baseline apart from the odd knock off volley because it's good enough to win against 99.9% of players 99.9% of the time. And there's nothing wrong with that. Federer can be as versatile as he likes. He has a ton of versatility. Problem is, that doesn't work against Nadal like it does against most players.
Only 6 times during his peak and in one of those in 2004 Miami he was sick. In another one 2006 Dubai he won more points but lost anyway so it's not like Nadal dominated him. Other 4 were clay and everyone knows that Nadal is all time clay GOAT so no shame losing to him. Fed was simply too good not to get to finals on clay.
All other loses to Nadal where no longer peak Federer. That's what happens when you play much younger opponent. Time works against you. Same with Sampras and Hewitt. Nobody says Sampras sucks because Hewitt started completely owning him in 2000. No big deal. If anything it is very embarrassing for Nadal that even last year Fed was still able to beat him once. Lets see how well Nadal is doing in 5 years vs much younger #1 or #2 ranked opponents.