Earning reputation in Kul Tiras and Zandalar can be done by almost any activity. You will passively unlock friendly reputation with each of your faction areas as you complete quests. At maximum level, World Quests will provide many opportunities to gain reputation in small amounts for each World Quest or one large amount per daily emissary. Warfronts will provide an opportunity to progress the 7th Legion and The Honorbound by means of Warfront contribution quests. Mission table rewards can grant tokens that boost your reputation level by a small amount. Despite this bonus being granted in small amounts, it can very quickly add up to a massive bonus to your most important factions, such as Champions of Azeroth. Even pet battles can grant reputation!
To give you some perspective I leveled both a LF Ret Paladin and BE Rogue (so one started from level 20 and the other from level 1). I focused on getting the achievements I was missing for the Loremaster, so not the most efficient route by any means. I was using full enchanted heirlooms (minus the ring) and the WoW-Pro addon though, as well as having War Mode turned on all the way.
XP Potions: The Elixir of Rapid Mind and Elixir of Ancient Knowledge no longer drop. They can be bought on the AH still but are way to expensive for it to be worth it. The Excess Potion of Accelerated learning is available from your garrison quartermaster but only works for level 91 to 99. As of Patch 8.1 you can also buy the 10% XP Potion Draught of Ten Lands.
Stormheim is the zone you want to start it. For some reason Legion treasures are not worth any experience like they are in WoD...except in Stormheim. I haven't been able to find out any reason for this, and it's possible it may get fixed/nerfed at a later date. But for the time being you REALLY want to jump from treasure to treasure to augment your quest experience.
I tell you my experience. I'm leveling a priest that it's 60 now and since I have also done some instances (and I have full heirloom set with 20% experience gain bonuses) and been very ahead of the guide, I skipped some zones since they were grey quest for me, well it was a real mess. Missing quests because I didn't to the previous to enable the following. Going in a zone then realizing that I couldn't do that quest because I didn't do the starting quest chain, very unconmfortable. In short what I suggest you it's not to skip areas, or make really sure that you do all the quests required (at least) and check carefully the previous zone you'll going to skip to make sure that you won't have problems with struggling finding where to start the quest chain to sync with the guide section.
Congratulations on reaching Level 120! Now that you have hit Level 120 we recommend looking at our Easy mode page and Talents section to learn how to play at max level. To get yourself prepared for the end-game content ahead, we strongly recommend this Battle for Azeroth Raiding Lexicon/Spreadsheet by Medivh. It is a gold trove of information that will help you when gearing up in Battle for Azeroth and more.
I've used WoW-Pro for years and in WoD, Legion and now BfA it's been awesome for just going on auto-pilot and working your way through a zone. It has 3 levels of depth you can set, so you can set it to just do 1) the main story, main points of interest and rare mobs and treasure that aren't far off the beaten path; 2) every quest with a more thorough dive into the side stuff; 3) absolutely everything.
DoTs: Assuming that the mob is going to live for certain periods of time, it is worth it to place DoTs up. If the mob lives for at least five seconds, cast Pain. If it lives at least seven seconds, cast VT. The ideal time to cast DoTs is when it would be replacing Flay, but you can substitute Blast if the mob will live longer. Make sure to cast Bolt on cd though!