Well I had a look around at a bunch of Pokemon and there are some Pokemon that might be able to take a few hits - Wailmer, and the previous mentioned Onix and Honedge are options. Plus there are some Pokemon with decently high attack and speed (but nothing else) like Gastly. But as you guys pointed out, anything that gained an evolution in a generation other than the one that it was introduced in is probably my best bet (and now I really wish Budew didn't exist so I could use Roselia). I'm definitely going to grab Onix, and I wish Scyther appeared way earlier in the game. I'll still probably grab one though.
I actually ended up grabbing Charmander because I wanted early access to Dragon Rage, so now I have two fire types (I wanted Fennekin for Viola). I'll probably ditch whichever one falls behind when I need a few party slot, or when Dragon Rage becomes weak.
Use a team of six Bidoof. That's all you need to beat the game.
Do you know how freaking long it took me to find a Bidoof with Unaware instead of Simple? It took ages, I caught like four of them before I got what I wanted. So, I guess I already have almost enough Bidoof for a team of six then... But losing two stats for every growl you come across in the early game is kinda annoying.
Also I swear to god that if this run is still easy I'm going to be so annoyed. Come on Pokemon X, make it hurt. Please don't disappoint me like this.