I definatly agree that defiance is too little, too late on a blaster to actually help.
What if it had a duration though? So if you are knocked into the range where you become defiant you gain the bonus, but after being healed, you keep the bonus for, say, 1 minute.
Or what if there isn't a duration so much as when you take damage, you gain X bonus damage spread out over your next few attacks. This would work like so; in a battle a blaster is beaten down to 40% health, here the blaster gains 500pts of bonus damage at a 33% bonus. So an attack that does 100pts of damage would deal 133, and the bonus damage drops to 467.
Each time the blaster reaches that 40% mark he/she would gain another 500 bonus(or whatever), but if hurt past 35% the bonus would increase to 66% and another 500 pts bonus would be added. So a blaster that had been knocked down to 35% health would have a 66% bonus damage and 1500 bonus points to use.
(The numbers I used are just to illustrate the idea)