There is. The barrier etc are simply counters. They start at FF and go down to 00 (if i recall), but the actual status effect is removed at a check point, so even though barrier is 00, it will still be up until the check is made. Same for the rest.
The status' etc are all in the character stat areas of exe. Each character has his own vars and counters.
I didn't record the counter, but it is easy to trace barrier (thus all of em) from 006DD78D/ 006DD74F, the barrier gauges.
So each status doesn't have a unified / general duration assigned to it by default but it's different from character to character? At least that's what it sounds like from what you're saying.
Also, if the value goes down from FF to 00 and is then removed upon check, there has to be some sort of "remove X points every Y second" values set somewhere. I know barriers go down faster / slower depending on battle speed so this could be a real pain to figure out.
I suppose all positive status's run like this? Assign status, set value to X, decrease value every Y seconds and check, if value = 00 on check, remove status. ( Except berserk, which doesn't seem to run out but is handled as positive status )
Most of the negative status effects work like this too then, or so I assume? If Y is variable based on the battle speed value ( or if the battle speed value IS Y and it's factored down or up in some way ) then it should be possible to tweak the actual durations of statuses, no?