Which games have the best in-game trades, in terms of availability and in-game performance?
I think they all have their good trades and duds.
Kanto Except LGPE (****): Most of their trades are good either because it's the only way to get the Pokemon or makes getting a certain Pokemon easier. The only "dud" I see is the Raichu for Electrode, like why?
LGPE (*****): Honestly probably the best trades because all of them are trading for their Alolan regional variant and you can do it as many times as you want (and each time there's a chance of the Alolan Pokemon being Shiny!).
HGSS (**): I'm specifying HGSS because the original GSC had a lot of iffy trades. But HGSS improved the trades and made them alright, not bad but not great either. Still has a few duds like a Dragonair for Dodrio (lol, what?).
Hoenn (***): Now a thing about the Hoenn trades is that, in the original RSE the point of them was getting a Pokemon with a good Contest stat with training them. The first trade is probably the best, a Slakoth you can catch nearby for a Makuhita which would be useful against Roxanne. Worst is probably a Bellossom for a Corsola, the later you can easily catch at that point anyway.
Sinnoh (****): They're pretty nice though nothing outstanding, and one is both funny and infuriating. Machop for Abra ain't bad as Machop is easliy caught nearby and if you ever tried catching an Abra you'll know this is much appreciated. While Buizel for Chatot seems mundane, the Chatot is well trained in all Contest stats so can be an initial help there. Finneon for Magikarp is just to show off you can now have Pokemon with their dex entry written in another language, in this case German (and if you're playing a German game it's English). And now for the funny/infuriating (infuniating?) one: Medicham for Haunter. Think you're getting a Gengar? NOPE! The Haunter is holding an Everstone, trollol!
BW (****): The trades in BW are nice as they play on the version exclusivity/scarcity of a few Pokemon being traded for the one more common in the version you're playing. A few are also geared towards helping you take on the Gym Leader.
BW2 (*****): The normal trades are like the ones in BW though slightly adjusted to better flow with the changed path the game takes through Unova. They also do some interesting ideas like letting you battle a trainer you traded a Pokemon and they'll use the Pokemon you traded to them! However the best trades are probably with Yancy/Curtis who will trade you a Pokemon you can only get from them and these Pokemon have their Hidden Abilities! And you can trade them any Pokemon you want, even a recently caught route fodder!
XY (*****): During the main game all the trades are mainly to help against the next Gym Leader, but these Pokemon aren't bad and they ask for a Pokemon you can easily catch: Bunnelby for Farfetch'd (good against Viola), Luvdisc for Steelix (good against Grant), and Jigglypuff for Bisharp (good against Wulfric). Post game you can also get the basic stage of the Starter that Shauna started with and she asks for any Pokemon & Diantha gives you a female Ralts holding a Gardevorite for any Pokemon.
Alola (****): Most trades are to help you with either the Trial or the Kahuna. I think USM has the better trades (still don't help with the story problems...)
Base SwSh (****): When not helping with preparing for the next Gym Leader, they also do a neat thing with asking for a regional variant for their normal counterpart (though for some Pokemon this is required to complete the dex as they have different evolutions from the original).
SwSh with DLC (*****): Already the Isle of Armor boosts the score by doing the inverse of what LGPE did: trading the remaining Galar regional variants for their normal counterparts (or in some cases a normal Pokemon for their Alolan variant). Though you gotta find Regina each time, her trades are unlimited and they all have an Egg Move & chance to be Shiny! Normal Pokemon have their Hidden Abilities though Alolan Variants have one of their default Abilities. And this is just Isle of Armor, who knows what Frozen Tundra will bring anymore!
Though remember in-game trades are just one side of the coin.
Gift Pokemon are their own thing though at times also meant to accompany the gaps in-game trades may have.