One: There's a peculiar man in Ilex Forest that likes giving out Pokémon the move Headbutt. He should be some mid-age man after some long-ish path... I don't really remember where he is exactly, but I'm thinking he should be here in this area:
Second: Get the gym leaders' phone numbers. They're seriously one of the best training methods to reach 100, since once you're around the 70s-80s they get ridiculously easy they're just free fodder for experience. The best Gym Leaders are the ones that do it in the afternoon, since that's much from 10-11am to around 5-6pm. Nighttime Gym Leaders are also great too if you're nocturnal.
The thing to exploit is this: Find a gym leader who is available at the current time you're playing. Beat them in the Fighting Dojo, then immediately exit. Call them again. They'll be back instantaneously. Repeat until you need to heal in the Pokémon Center (Probably because your PP ran out or something), then return to the Dojo again to fight more. Do this until Level 100. :)
If you have a Lucky Egg, this will be even easier.
Here's where you can find each Gym Leader's phone number, and what day of the week they'll be available.
https://bulbapedia.bulbagarden.net/wiki/Pok%C3%A9gear#Gym_Leader_phone_listing