At the moment willpower is being used via a few perks in particular to create some really cheesy game play. (1 turn rushing by assaults to clear the map etc)
So a couple of change to how willpower works that might help with this:
Only allow will power boosts to apply at the end of the turn for each solider. If you can’t rush > kill > claim willpower back > rush > kill > claim willpower back because you’re not getting the will power back until the following turn then this loop would be broken.
Set a soldier’s starting willpower as a maximum value. - If you can’t go beyond the starting will power for a given solider then you can’t bank an excess of willpower in advance before going into that rush > kill > rush > kill cycle.
Make any decreases in willpower apply to that maximum willpower value. - This would mean that horror aspects of the fight have impact; the longer a soldier is exposed to Pandorian forces and/or mist the lower their resilience to it.