If there is 0.3 seconds between the server's checks, then special attacks should take at least 1.2 seconds to execute. 0.3 in case the first check is missed, 0.6 seconds for the player to react, and 0.3 for when the server misses the fourth check.

There you go programmers.

Or here's an actual design improvement... force the game to acquire four or five consecutive positive (in the aoe) checks in order to hit. So if the game fails to make a check half way between two 0.3 second intervals, it lands in the player's favor instead of in stupidity's favor. Since the game can't accurately check whether a player is actually in the aoe, change the mechanic to one that's based on how long you are in the aoe rather than whether you were in or out on the last check.