In Red, Blue, Yellow, Firered, and Leafgreen, you obtain either the Helix Fossil or the Dome Fossil after fighting a Super Nerd in Mt. Moon. The Old Amber can be obtained from a scientist in the back room of the Pewter City Museum of Science. (All after Brock, I think).
In Gold, Silver, and Crystal, you can’t obtain fossils and will have to trade them over from Gen 1. However, you can get Aerodactl in exchange for Chansey in an in-game trade on Route 14.
In Ruby, Sapphire, Emerald Omega Ruby, and Alpha Sapphire, you can obtain the either the Claw Fossil or the Root Fossil on Route 111 (after Wattson’s gym, I think?)
Additionally, in ORAS, you can obtain any fossil at Mirage Spots save for the Sail and Jaw Fossils, which must be transferred from X/Y. The Dome, Armor, and Plume Fossils are exclusive to Omega Ruby and the Helix, Skull, and Cover Fossils are exclusive to Alpha Sapphire. The Old Amber can be obtained regardless of version.
In Emerald, you can get the other fossil at the end of the Desert Underpass (after becoming champion).
In Diamond, Pearl, and Platinum... I think this quote can explain it better than I can:
The player can obtain the Armor and Skull Fossil from the Sinnoh Underground. The Armor Fossil isn't in Pokémon Diamond and the Skull Fossil isn't in Pokémon Pearl. In Pokémon Platinum, you can find Armor if your trainer ID is an even number and a Skull Fossil if the trainer ID is an odd number.
(The Underground is a minigame/internet thing available anytime after reaching Eterna City)
In Black and White, you can receive either the Cover Fossil or the Plume Fossil from a guy in Relic Castle. After defeating Ghetsis, a Worker in Twist Mountain will give away fossils from previous generations; one per day.
In Black 2 and White 2, Lenora gives out the fossils instead, and the Worker will start giving away previous fossils after you beat Iris.
In Johto's Generation IV games, the Dome(SS) and Helix(HG) Fossils as well as the Old Amber can be found randomly by smashing breakable rocks outside Ruins of Alph. Root(SS) and Claw(HG) Fossils can be found randomly by smashing breakable rocks in the Cliff Cave after entering the Hall of Fame. Fossils found in Pokémon HeartGold and SoulSilver can be revived as level 20 Pokémon at the Pewter Museum of Science. The Skull and Armor Fossils are absent from both games, so either they, or the Pokémon revived from them, must be transferred from Diamond, Pearl, or Platinum.
In X and Y, you can obtain either the Sail Fossil or the Jaw Fossil at the end of Glittering Cave (between bug and rock gym). In that same cave, smashing rocks can give you the Old Amber (yes, you can get multiple).
The other fossils can be obtained there after completing the game. Skull, Armor, Cover and Plume fossils are available in both games but the Claw & Root fossils are exclusive to X and Dome & Helix fossils are exclusive to Y.
In Sun and Moon (and presumably Ultra Sun and Ultra Moon, idk the source doesn’t mention it) you can purchase Fossils for 7000 each at Olivia’s Stone shop in Konikoni City (between Mallow’s trial and Olivia’s Grand Trial). You can get the Skull and Cover Fossils in Sun and the Armor and Plume Fossils in Moon. You can buy one of each.
In Sword and Shield,
The fossils in this game are first found on Route 6 hidden along the route. In Sword, the player can find a pair Fossilized Dinos and Fossilized Birds hidden in different parts of the route. In Shield, the player can find a pair Fossilized Drakes and Fossilized Fishes hidden in different parts of the route. More fossils can be found with the Digging Duo on Bridge Field in the Wild Area. Birds and Dinos are more common in Sword while Drakes and Fishes are more common in Shield but, they are all available in both games.
Sauce (thanks, PKT, even if it’s unreliable). Also Bulbapedia.
If anything is still unsatisfactory, please let me know!