Very strange about the projectiles, considering how many were used in Epic Encounters. No idea why they would go from working well to worthless.
As far as applying damage, perhaps you could use CharacterGetStat(_VitalityPoints,_Char,VitalityPoints) to somehow use that as a means to scale the damage. Or with MagicArmorPoints or PhysicalArmorPoints. Not sure if you meant this by ApplyHealing, but there's a CharacterHeal call, but that takes a percentage.
And indeed, the fact that CharacterApplyStatus does not have a source is a major limitation. I believe the story version of this call does take a source, so theoretically the characterscript one should be able to. Heck, creating a surface in character scripts can take a source. Also, I swear there was a way to check surface size in some form.
I also think there's a CharacterUseSkill story call that doesn't require the character to actually know the skill or have AP or anything.
One way to make an AOE dot would be to give the dot an aura effect, though the damage would only apply on the nearby character's turns. It could also use an iterator to apply the status to nearby characters.