I really don't think it's necessarily a bad thing. Sure, the fact that Nintendo fans only want Nintendo games may keep the Gamecube from selling as well as the PS2 but it has its share of benefits as well. The real money is in software sales after all. Sony may have sold a lot of PS2's but most of the console's best-selling games are made by third-party developers and all Sony really gets is royalty fees from them. When a Nintendo game sells millions of copies, all that money goes directly to Nintendo. That's why, despite it having a much smaller userbase, Nintendo made a MUCH bigger profit off the N64 than Sony made off the original Playstation.
As for the setbacks the Gamecube has faced, Nintendo has nothing but itself to blame for them.
The Gamecube entered the market over a year later than the PS2 and gave Sony ample time to dominate. With the Gamecube, Nintendo fixed many of the problems the N64 had but, unfortunately, repeated its biggest mistake and entered the race TOO DAMN LATE. If the Gamecube had launched against the PS2, many third-party developers may have jumped ship to it for its ease in development as the PS2 is notoriously difficult to develop for. But, by the time the Gamecube development kits were released, the PS2 had already sold millions and developers were already finished up their AAA system-selling second-generation titles for it.
Maybe the Gamecube's late arrival would have been ok if it had an amazing, innovative, flag-ship launch title that would take the world by storm, but instead it had Luigi's Mansion which was a fun game but not something to launch a console with. If not for Smash Bros Melee which thankfully arrived shortly after the launch, the console would probably only be doing half as well. Of course, shortly after launch came a SIX MONTH DROUGHT where Nintendo didn't release any first/second party games which convinced consumers it was the N64 all over again. That was followed by ED which was released in the dead of Summer when it had no chance of getting any attention. Then came Mario which, though very fun, was nothing we hadn't seen before. As long as it took for the Gamecube to get a true Mario title, people understandably expected MUCH more. By the time it was released, there were plenty of 3D platform games on the PS2 and people were getting bored with the genre. Mario was followed by the incredibly disappointing Starfox Adventures. Metroid Prime and Animal Crossing actually did live up to expectations but, by the time they were released, a ton of damage had already been done. A game Nintendo really should have had ready for the Gamecube's first year was Mario Kart which would have sold a ton of consoles. Mario Kart played a huge role in the early success of Nintendo's previous two consoles and it's just ridiculous that Nintendo didn't have the game ready much sooner. It would have also been very wise for Nintendo to have a Pokemon game ready for the Gamecube's first year as well. At the very least it could have done something to counter-attack the XBox's "free game" offer during the holiday season. I have no doubt the Gamecube could have beaten XBox over the holiday season if Nintendo had been more competitive.
If Nintendo had made better decisions, it could have easily met and greatly surpassed its sales expectations and could be beating the hell out of Sony right now, if not in hardware sales, then certainly in (console) profits.