Most of the plot holes in MGS can be explained away if you try hard enough. Some parts you just have to disregard - parts which Kojima admitted he had no idea what he was talking about when he wrote them. However, no matter how batshit insane the plot of each game and the series as a whole is, it's a whole lot of fun. I've come out of MGS2 twice now and each time I've not really had any idea of what happaned. The games are pretty much self-aware of how over the top and insane they are though, so it's very easy to just say "Holy shit!" when Ocelot reveals he's a triple+ agent.
As for Final Fantasy 13, my complaints of linearity stem from the fact that it is
literally linear. The paths are hallways that follow a pattern of walk, cutscene, miniboss, cutscene, walk, cutscene, cutscene, cutscene, boss, cutscene, repeat. The pattern sticks out like a sore thumb eventually and I grew very bored of it. I am not pretending previous Final Fantasies were anywhere near as open as a Western RPG, but at least the games had variation in their dungeons, mini-games and sidequests to give you something else to do when you've grown sick of walking and battling and watching cutscenes for 20+ hours. I don't think the plot (fal'Cie! l'Cie! hope! fate! Focus! Pulse! Cocoon!) is really enough to hold your interest. At least, it wasn't enough to hold mine.
I'm not calling the linearity the biggest problem of the game though. It's nowhere near the biggest problem! For me, that would be the messy plot during the first 10 hours paired with the wonky characters that give me absolutely no reason to care for whatever happens. Vanille's voice actor also ruined every scene she appeared in for me as well. The battle system also extends battles for far too long despite S-E's attempts to develop a fast paced turn-based battle system, without there ever being any real challenge.
I had a lot of problems with the game. No towns was not one of them. Linearity was a very small problem. It being a bad game is probably what made me dislike it, in the end.