It may be a bit of a slog but SH siege defence (and possibly hitting other fortresses like Fury Towers) is the way to go for soul shards. This is your target for successful solo SH defences against level 1 Tower of Odin Jottun troops:
Level 4 SH and Tower of Odin;
20 million plus march size;
Tier 7 troops with most of Hero, Tier VI and Tier VII knowledge completed;
Maxed hero with legendary Ubba's set improved to level 3 and higher;
Maxed Raine with legendary fortresses gear improved to level 3 and higher;
It helps to have a suitable, maxed, aesir, relevant town skins, one relevant hero skin and some of the other relevant knowledge but those are not essential to success. They all reduce losses (little by little).
Improvements to gear tend to be the biggest slog of all as you really have to hit lots of Ubers and Invaders using normal attacks and it is time consuming and boring.
Reaching that point gets you 600k soul shards (or a share if clan mates/allies are joining in) for each march.. Level 1 Tower of Odin provides five marches plus one more which comprises scouts (easier successfully to defend and less soul shards).
You lose between four million and two million TVII troops per march. I find that if I start with forty million TVII I can successfully defend all five marches without having to pause and train more troops along the way
You are right that after the early and middle part of the game are completed, soul shards become critical so however far off those minimum criteria may seem to be it is worth knowing what the target is.
I should add that it is needful to gain expertise at avoiding interference from others in your defences. But that comes with experience. The shorter the time your troops can be in the SH the better, three seconds is a decent target to aim for.