I've been kicking around a similar concept for alternate Crusade rules. My main goal being to slowly whittle down my available units until I feel compelled to start a new roster. Normal Crusade is great, but you sort of run out of reasons to use a variety of units once you've leveled up a bunch of your favorites. Here's my rough outline:
* Start with the Crusade rules.
* Instead of the normal rules for creating a starting roster, you have have about 3,000 points (or power level) to work with.
* After each battle, roll a d6 for units that were completely destroyed. On a 1, they're removed from your roster. On a 2-5, they have to sit out your next 1d3 games. On a 6, they take a permanent injury from the Crusade injury table. This replaces the normal injury roll rules.
* You can't spend RP to add units to your roster, but winning certain Crusade missions lets you add a new unit. I like the idea of having a random table that determines what sort of unit you get. I.e.: Gain a unit with the vehicle keyword. Gain a unit with the Fast Attack battlefield role. Etc.
* I like the idea of having options to spend RP in different ways based on what units are still in your order of battle. Ex: You can spend RP between battles to have an apothecary treat one of your injured units. This either reduces the number of games they have to sit out by 1 or removes one permanent injury. Tech marines could have a similar rule for vehicles. Maybe including a scout or phobos squad allows you to spend 1 fewer CP when placing units in strategic reserves during the next battle because they scouted out a hidden approach. Etc.
*If at any point you are unable to field a 1500 (or whatever) point army due to an inability to fill out the minimum requirements of a detachment or a lack of healthy units, your crusade ends.
* Might be best to have the above rules replace the faction-specific Crusade gimmicks like conquering planets for Tau and acquiring territory for Drukhari. Maybe. Don't want the bookkeeping to become too much. Then again, I hate to cut out all that tasty content...
The overall idea is that your force will become smaller and more beaten up over time but also more powerful. So your late-game leveled up units feel like a necessity to limit your casualties and a reward for surviving rather than just being an over the top unit that discourages you from fielding other units.
That's my pitch. Here are some notes on yours:
* As you've pointed out, this is going to strongly favor factions that tend to die slower. So a glass cannon army like drukhari or slaaneshi daemons is going to be punished for their choice of faction. And within a given faction, some units will be discouraged over others. For example, tyranids will lose gaunts much more quickly than they lose warriors.
* Consider not perma-killing models unless the entire unit has been wiped out. This is less bookkeeping, and it can help mitigate my last point; killing 1 termagaunt is easy. Killing 30 termagaunts is... still easy, but less so.
This also avoids potential issues with partial units. Say my roster initially has a 10 man squad of kabalite warriors including a dark lance and some blasters. During a battle, I lose 5 normal splinter guys but keep my more expensive/effective models (the blasters/lance) alive. So how does that unit work in my next game? My codex says I have to have 10 bodies in the squad if I want to include the lance and second blaster. Do I functionally lose the entire squad because I didn't kill my upgraded models first? And if so, is that a bug or a feature?
Unless it's troops, if you lose three full-size squads of that unit you can't field them any more.
I'd delete this sentence. You're already encouraged to bring troops because they're needed for patrols/batallions, and you've already mentioned that players can have an infinite number of them in their rosters. As you've phrased the quoted portion, there's a weird incentive to field 29 gaunts (meaning they aren't a "full-sized" squad and thus you won't be locked out of using gaunt squads in future games.) Plus, the quoted section means you have to keep track of how many times you've lost a full-sized squad.
* Unless you and your gaming group happen to have extremely extensive collections, the cap on 3 copies of a datasheet per roster might give a slight advantage to the player with the bigger collection. For instance, one player might only own 2
HQ models in his entire collection while another player might have every marine
HQ ever made. This would mean that the first player is very susceptible to being knocked out because his roster can only contain a max of 6
HQs. (Each of his 2 models fielded 3 times.)
* Similar to the last point, some factions have fewer datasheets than others. A harlequin player only has 2
HQ options, 1 troop option, and something like 8 datasheets in the entire codex. So a harlequin player would get knocked out more easily than someone who can field a larger variety of units.
* To me, a good game of
40k is usually a close game with both armies taking heavy casualties. So whatever the standard game size is that you intend to play, I'd expect to lose about 90% of that from my roster each game. Assuming that my starting roster was like, 3,000 points and the standard game size of the campaign was 2,000 points, this means I'd expect to lose 1,800 points in my first game leaving me with only 1,200 points. Meaning I'd be knocked out of the campaign after a single game.
So with that in mind, how many games did you want the campaign to last for? If you up the starting roster size high enough, you'll exacerbate the limited datasheet problem for factions like harlequins or mono-god daemons. You could consider playing smaller games or making models/units perma-die less quickly if you want the campaign to last longer.
* How would you handle units that get added mid-game? For example, if I have a tervigon birthing fresh gaunt squads that survive the game or the Parasite of Mortrex creating new ripper swarms. I guess daemon summoning might still fall into this category, though it seems unlikely to still be a thing in a few months.