as it stands now, the one closest to figuring out that shiro is a clone is actually lance.
hear me out-
everyone else seems completely oblivious so far. maybe keith is slightly suspicious of the circumstances behind shiro returning –he spends a lot of time trying to reason his way through it– but he doesnt question that this is real shiro. even when shiro uncharacteristically and repeatedly shuts him down, he doesn’t ever stop to consider whether this is actually shiro. (keith thinks shiro’s criticism is his own fault, but that’s another topic entirely.)
has noticed something off about him from the beginning, even if he isn’t yet sure what it is.
otherwise, he would have gone to shiro with his insecurities in s3, not keith. keith even asks lance why he decided to go to him, specifically.
lance says, “well, i mean, you’re the leader now, right?” but idk, that doesnt really sound like an entirely convincing reason to me.
and then in the last episode- lance says they need to get out off of naxzela, but shiro shuts him down and it. pisses. lance. off. shiro dismissing lance puts voltron in danger- it puts the entire team in danger. when they get back in their lions he literally growls. he is that frustrated.
i think that’s the moment when lance realizes that shiro (regardless of whether he’s the real one or not) is not the right leader for voltron. keith would have listened to him. even though we haven’t had much of a chance to see keith really lead voltron, from what we have seen in s3 e5, he is much more responsive to the team’s input than shiro is. and now lance realizes that. now lance knows that shiro isn’t the right leader for the team- at least not right now.
i want him to side with keith. i want lance to start keeping a more critical eye on shiro. and over time, i want him to notice all the little things shiro/kuron does that don’t add up. i really want lance to be the first to figure out. and the way things have gone, i think he’s already starting to piece it together.