Some interesting points. However, if I remember the days of the Gamecube, a lot of those games were missing features and Nintendo is partly to blame for some of that because they simply refused to open up online gaming during a time when people were really getting into it. On top of that, the GC had a serious image problem. I don't know how many times I heard it called the "Kiddie Box" or the something to that effect. It sucked reading the original Gaming Age forums because that was a huge problem. Lots of flame wars back then. The GC just wasn't all that cool to the masses. Missing features in games didn't help, either. I lay a lot of that on Nintendo.
The Wii was a different story altogether. I believe there was a substantial "core" audience in the beginning and the crappy "family"/handholding/"even grandma can play" games drove them away. I still think this was a major failing on their part as they ended up poisoning their own well. Core guys were willing to pick up the Call of Duty games and the like. If I remember correctly, the Wii versions of those games sold fairly well. I remember working at Gamestop during those days and people being furious at the Wii version of Madden (I think 2006) because of cut features and such. EA really dropped the ball there. We had a lot of pre-orders for that game, too. Same with that Wolverine game that came out around that time. Third parties really treated Wii owners like third class citizens.
I think the Wii U is just unappealing and that was/is the problem with it. However, crappy ports didn't help and completed the narrative that it was a crappy system not worth owning. I think there were even videos early in the Wii U's life showing how crappy it was. It just help drive home how unappealing it was. That stuff doesn't help to sell games to the "core" audience who do a lot of things on word of mouth. I don't think there was anything Nintendo could have done about it, because it's hard to change people's perception after the fact. Some of it falls at the feet of Nintendo for trying to release last gen hardware in a time when people were tired of that tech and ready to move on.
Anyway, you're right, it's a complicated thing, but I think it can be solved by Nintendo having hardware that's close to the competition and third parties actually TRYING to give Nintendo console owners good games with a good value proposition. This means no more crap like Mass Effect 3 (where the trilogy came out on other platforms and cheaper). Or treating people like they're kids. I think EA, Ubisoft, Activision, and the like should make the games they're good at and try not to second guess things. Madden should be just Madden...none of that Madden for grandmas. Grandmas DON'T play Madden. They should know that, so don't even go there. People who play Madden want to play Madden that isn't made for little kids. On top of that, all the DLC should be released along with all other versions. I'm still sour I didn't get the pre-order map for CoD until two years later. Ugh.