Neutral natures like Hardy don't do Pokemon any favors, as while they don't lower stats, they don't increase stats, either. Also, EVs are more important than having raw stats.
Ferrothorn is massive Taunt bait with its current set. If you really want to set up sandstorm, use Tyranitar or Hippowdon, as they set that weather up automatically with their Sand Stream ability. Leech Seed is all Ferrothorn needs if it wants to inflict passive damage:
-Stealth Rock/Spikes
-Leech Seed
-Power Whip/Protect
-Gyro Ball/Thunder Wave
Nature: Relaxed
EVs: 252 HP/88 Def/168 SDef
Item: Leftovers
Ability: Iron Barbs
The above is the standard Ferrothorn set, but since you're using Sand Rush Excadrill, use Tyranitar or Hippowdon as your Stealth Rock setter instead:
Tyranitar:
-Stealth Rock
-Stone Edge
-Crunch/Fire Blast/Ice Beam
-Pursuit
Nature: Relaxed
EVs: 248 HP/80 Def/180 SDef
Item: Leftovers/Smooth Rock
Ability: Sand Stream
Hippowdon:
-Stealth Rock
-Earthquake
-Stone Edge/Toxic/Whirlwind
-Slack Off
Nature: Impish
EVs: 252 HP/144 Def/112 SDef
Item: Leftovers
Ability: Sand Stream
While Sand Force seems tempting to increase Excadrill's power further, it's still not that fast. Its average Speed is why Sand Rush is the preferred ability when it's paired with sandstorm inducers. Rock Slide is literally the only coverage move Excadrill needs, as it has good coverage with Earthquake and allows Excadrill to hit Talonflame, a Pokemon that walls its current moves, on the switch:
-Earthquake
-Iron Head
-Rock Slide
-Rapid Spin
Nature: Adamant/Jolly
EVs: 252 Atk/4 Def/252 Spe
Item: Life Orb/Air Balloon
Ability: Sand Rush
Use max Attack/max Speed as Talonflame's EV spread.
Mega Swampert must be paired with Politoed to make the most out of its Swift Swim ability. Since this isn't a rain team, Mega Swampert isn't an option. You're better off giving the Mega slot to Garchomp, since it's already paired with Tyranitar/Hippowdon:
-Swords Dance
-Dragon Claw
-Earthquake
-Fire Blast
Nature: Jolly
EVs: 4 HP/252 Atk/252 Spe
Item: Garchompite
or
-Draco Meteor
-Earthquake
-Fire Blast
-Stealth Rock/Stone Edge
Nature: Naive
EVs: 4 Atk/252 SAtk/252 Spe
Item: Garchompite
Now this team needs a Water resistance. Slowbro, Azumarill, Amoonguss, or Tangrowth are good substitutes:
Slowbro:
-Scald
-Psyshock/Calm Mind
-Thunder Wave
-Slack Off
Nature: Bold
EVs: 252 HP/232 Def/24 SDef
Item: Leftovers
Ability: Regenerator
Azumarill:
-Waterfall
-Play Rough
-Aqua Jet
-Knock Off/Superpower
Nature: Adamant
EVs: 164 HP/252 Atk/92 Spe (Choice Band) or 240 HP/252 Atk/16 SDef (Assault Vest)
Item: Choice Band/Assault Vest
Ability: Huge Power
or
-Belly Drum
-Aqua Jet
-Play Rough
-Knock Off
Nature: Adamant
EVs: 92 HP/252 Atk/164 Spe
Item: Sitrus Berry
Ability: Huge Power
Primeape outright sucks in competitive play. Yes, it has a decent move pool, but it seriously struggles against bulky Ghost Pokemon. As this is a sand team, Toxic Orb Breloom is a decent fit to help check Water Pokemon more easily and set up with Swords Dance to hit harder:
-Swords Dance
-Seed Bomb
-Superpower/Drain Punch
-Facade/Mach Punch
Nature: Jolly
EVs: 12 HP/244 Atk/252 Spe
Item: Toxic Orb
Ability: Poison Heal