I argue that he's "better" from the perspective of how he treated his friends in the situation he was in, which I felt was more of core factor in his character compared to the other factors. I'm not trying to argue that he was objectively better in every possible way.
This is actually another interesting part since if you ask Riku, chances are he'll tell you it's all Sora's fault and that he was in the wrong. For better or worse Riku tried reaching out to Sora, but felt that Sora abandoned him. If Riku wanted to be free from the islands, Sora was suddenly free from Riku when he brought Donald and Goofy in. In a way, Sora was the one who made the first offense.
Riku spits it out clear as day in Neverland - he's the one who sticks by 'old friends' whereas Sora ran around with his new buddies, abandoning his old ones. Was he a bastard to Sora? Yes, but look at each and every scene between him and Maleficent - he truly was hurt by Sora and thought that Sora deserved it.
He also tried to reach out to Sora in Monstro, but was denied - when all he wanted was for them to save one of the other lone survivors from his world.
That's a great part of why I can't blame Riku for KH1 - Sora has quite a bit of blame to deal with himself, as he's been presented in such a light that it's like he took the friendship with Riku for granted, to the point it seems like he so easily discarded it. See again Maleficent not needing to work too hard to twist reality around - Sora was helping her more than a bit, making Riku out to be, in a way, the better friend here.
Want to know why Kairi fought in KH2?
That's actually one of the things that bug me a tiny bit less since it's not like the entire game led up to that moment, like in Days or BBS.
Though that is yet another example of how they basically shoot themselves in the foot whenever they do whole scenes in the secret endings.
Maybe that's why I'm somewhat pleased with BBS:FM and Re:Coded's endings - they're more continuations of the games rather than something they'll have to twist and break the story in order to reach it.
Deep Dive showed one battle at the beginning of KH2(that ended up looking hideously tacky in every incarnation other than the CG one), BBS(the trailer) showed the big climactic scene, which was a mistake to do imo, even though it looked awesome at the time.
It's more the atmospheres that irk me.
Days, for instance, started out with AkuRoku BFFing, and then it evolved into the RAX BFF. BUT they already established that Roxas left the Organization on his lonesome oh so dramatically and 'no one'd miss him', so they had to SOMEHOW get from BFF to emo-ville, in the process breaking Roxas's character.
In BBS they were so busy picking worlds based on how FUN they were, that they forgot that BBS isn't FUN. It's TAV breaking apart and the universe suffering from it. So instead of Aqua going ooooh and aaaah over Cinderella's world and having a worthless visit to the Dwarf Woodlands, they could've remembered that oh, BFFs Terra and Aqua will eventually want to rip each other's throats off, so maybe let's establish that more - but oh, Stitch is so cute, let's spam him instead~
*sigh*