In my experience, every alliance is struggling with members who don't show up for alliance wars, but still collect the battle awards from the treasure chest. That makes it very unfair for the people who do put in an effort to show up, and lose a lot of units in the wars.
So, how about this?
Every time you participate in an Alliance War, you gain 5 battle tokens whether you win or lose. Those tokens can be used to collect battle awards, which would cost one token a day. Welfare would remain free.
With 5 tokens per war, you have a surplus of 3 tokens a week, so if by accident you miss one AW, you can still collect some battle awards in the days following, just not as many as you would have had you participated. This surplus builds up over time, of course, so it rewards people who show up more often than not.
This would make things fairer for alliance members who put in the effort and units to gain or defend battle awards for the entire alliance, and would lift a load off the shoulders of archons who now have to spend a lot of time checking which members participate or not.