Because the definition of “best” wasn’t specified, I'm interpreting it to mean “most effective for a playthrough of the whole game”. These Pokemon will, for the most part, work well against Leon. If you wanted “best” to mean something else, you should have specified.
Please keep in mind these are not the only good Pokemon of each type --- anything works well in-game. There may be other options that I didn't put on this list because I limited each type to the top three Pokemon. This answer ignores the starters because you're unable to catch them. If it did include starters, they would probably be some of the best you could choose for their respective types.
Normal
Obstagoon - It's catchable on the first routes and has high Attack with Guts. It has a wide movepool with TMs and TRs.
Bewear - Helpful secondary Fighting type and Fluffy with a high Attack stat. It's a bit slow, but it has enough positive matchups to be worthwhile.
Snorlax - It's slow but bulky, letting it tank hits and deal solid damage in return. It might be a bit hard to catch, but it's worth it.
Fire
Arcanine - Strong, available early, and with two solid Abilities to boot. Unlike in earlier games, you should evolve Growlithe as soon as possible.
Centiskorch - The Rock weakness hurts it a bit, but Centiskorch is fantastic due to its high attack stats, solid coverage options, and early availability.
Chandelure - Ridiculous Special Attack makes it a force to be reckoned with. It can be annoying to get, but it boasts a solid movepool.
Water
Gyarados - High Attack, Dragon Dance, Waterfall and Earthquake. Need I say more?
Barraskewda - Incredibly fast and powerful, easy to obtain, and has a ton of moves to choose from.
Dracovish - Not easily available in Sword, but Strong Jaw + Fishious Rend will shred through anything you meet. Even without Fishious Rend, it’s very powerful.
Electric
Galvantula - Fast with 90% accurate Thunder and coverage moves like Energy Ball. Vikavolt is available earlier and is a bit bulkier if you prefer.
Toxtricity - Given as a gift, and Poison/Electric is great for all the Water and Fairy types you fight. Overdrive and Boomburst make it strong throughout the game.
Dracozolt - Not easily obtainable in both games, but a Volt Absorb one deals a lot of damage with Bolt Beak, Earthquake and Dragon Claw. Getting Hustle is much worse and should be avoided.
Grass
Tsareena - Strong physical attacker available early with good coverage and a decent Ability.
Roserade - Strong special attacker available early. Not much coverage, but its STAB moves are strong.
Ferrothorn - A premier defensive wall. Not much damage output, but it excels at walling so you can heal other team members.
Ice
Mamoswine - It’s available early, has an excellent Attack stat, and the combination of Ice + Ground STAB is near-unresisted.
Arctozolt - Not easily obtainable in both games, but Volt Absorb, the Electric type, and a BoltBeam combo make it quite powerful.
Glaceon - Glaceon isn’t the best, but it’s a strong special attacker that can learn moves like Ice Beam and Shadow Ball. You can swap it with Frosmoth or Mr. Rime, but those come later.
Fighting
Bewear - Helpful secondary Fighting type and Fluffy with a high Attack stat. It's a bit slow, but it has enough positive matchups to be worthwhile.
Pangoro - Pangoro is a very good catcher because it can learn False Swipe and can have Scrappy (as an HA, but its other two Abilities are also good). It also has many options through TMs and TRs.
Toxicroak - Poison's nice against Fairy types you fight, and while Toxicroak’s stats are fairly average, Poison Jab, Drain Punch and X-Scissor all help it out.
Poison
Roserade - Strong special attacker available early. Not much coverage, but its STAB moves are strong.
Gengar - An absolutely phenomenal Pokemon. Good coverage, Special Attack, and Speed make it powerful; you can substitute Haunter if you can’t find the wandering Gengar.
Toxtricity - Given as a gift, and Poison/Electric is great for all the Water and Fairy types you fight. Overdrive and Boomburst make it strong throughout the game.
Ground
Mamoswine - It’s available early, has an excellent Attack stat, and the combination of Ice + Ground STAB is near-unresisted.
Excadrill - High Attack, Earthquake, Rock Slide, early availability, and a fairly early evolution. Top-class choice.
Flygon - The Dragon typing is nice, and Dragon Dance + a respectable Attack make it all the better.
Flying
Corviknight - Available very early, incredible typing, and a movepool with exactly what it needs makes Corviknight one of the premier choices for a Flying type in Galar.
Gyarados - While not much can be done with its Flying STAB, Gyarados is excellent because of its Water moves, special bulk, Dragon Dance, Earthquake, Crunch, and a few other moves that consistently make it an excellent pick.
Togekiss - Togepi is pretty bad, but you can trade for one in Hammerlocke and that should make the grind to Togekiss easier. Togekiss is great, with Super Luck, a high Special Attack stat, and moves like Air Slash, Dazzling Gleam, and Aura Sphere.
Psychic
Orbeetle - Middling attacking stats, but it’s found early and has good moves to back it up. Dottler is also decent with Eviolite until you get Orbeetle.
Espeon - Its STAB Psychic is ridiculously strong, and it can learn a few other coverage moves to help. Happiness is a bit of a pain, but ultimately manageable.
Gardevoir - Easily obtainable and very strong. High Special Attack, evolves early, and gets moves like Moonblast, Psychic, and Shadow Ball.
Bug
Galvantula - Fast with 90% accurate Thunder and coverage moves like Energy Ball. Vikavolt is available earlier and is a bit bulkier if you prefer.
Centiskorch - The Rock weakness hurts it a bit, but Centiskorch is fantastic due to its high attack stats, solid coverage options, and early availability.
Ribombee - Very fast, available early, solid Special Attack, and moves like Bug Buzz and Moonblast. Mind its relative frailty.
Rock
Drednaw - Available early, with good moves like Rock Slide and Liquidation at its disposal. Strong Jaw and a high Attack stat only serve to make it stronger.
Crustle - Very physically defensive, with moves like X-Scissor and Rock Slide to give it an offensive presence. It is quite slow, however.
Coalossal - Rock/Fire gives it quite a few weaknesses, but Coalossal is available early and has decent bulk.
Ghost
Gengar - An absolutely phenomenal Pokemon. Good coverage, Special Attack, and Speed make it powerful; you can substitute Haunter if you can’t find the wandering Gengar.
Chandelure - Ridiculous Special Attack makes it a force to be reckoned with. It can be annoying to get, but it boasts a solid movepool.
Aegislash - Easily able to switch between high defenses and high offenses, plus it has strong moves, a useful typing, and is relatively easy to obtain.
Dragon
Flygon - The Dragon typing is nice, and Dragon Dance + a respectable Attack make it all the better.
Haxorus - It’s not available until the end of the midgame, but it has a ridiculously high Attack stat and plenty of coverage moves to back it up.
Dracovish - Not easily available in Sword, but Strong Jaw + Fishious Rend will shred through anything you meet. Even without Fishious Rend, it’s very powerful.
Dark
Obstagoon - It's catchable on the first routes and has high Attack with Guts. It has a wide movepool with TMs and TRs.
Grimmsnarl - Great Attack and solid HP, the Fairy typing, and moves like Play Rough, Taunt, and False Surrender make Grimmsnarl very powerful against a lot of opponents.
Weavile - Very fast, very physically strong, and has a good movepool. It’s physically frail, but that doesn’t matter when it OHKOes most opponents.
Steel
Corviknight - Available very early, incredible typing, and it has a movepool with exactly what it needs. Corviknight is an excellent choice in Galar for an offensively bulky Steel type.
Excadrill - High Attack, Earthquake, Rock Slide, early availability, and a fairly early evolution. Top-class pick.
Aegislash - Easily able to switch between powerfully defensive and powerfully offensive, plus it has good moves, a good typing, and is relatively easy to obtain.
Fairy
Sylveon - Easy enough to evolve given enough time. Fantastic special bulk and Special Attack allow it to take hits well and dish them out too. Moves like Moonblast, Mystical Fire, and Shadow Ball all help it deal with a variety of threats.
Grimmsnarl - Great Attack and solid HP, the Fairy typing, and moves like Play Rough, Taunt, and False Surrender make Grimmsnarl very powerful against a lot of opponents.
Togekiss - Togepi is pretty bad, but you can trade for one in Hammerlocke and that should make the grind to Togekiss easier. Togekiss is great, with Super Luck, a high Special Attack stat, and moves like Air Slash, Dazzling Gleam, and Aura Sphere.