Id say the biggest problem with the fight is time, time is not on your side when he changes into Velius...
After his initial clops cast, youll notice despite the obvious fact that clops is supposed to be a slow AT cast, he casts it rediculously fast after the first cast, and can end up casting it on several occasions before you have the time to react...
I found the best way to beat him...have a ninja equiped with mp switch and a lancer equiped with autopotion, (this is without using the yell/accumalate spam for a cheap victory) also make sure ramza has 2 swords ability and take mustadio with you as well with you.
after wiegraf is downed (shouldnt take much effort if your set up right) have ramza take out the closest demon and have your ninja attack vielius (move +2 is a must) always jump with your lancer (even if it misses it stops him getting hit by clops as he will be in jump status) and have mustadio arm aim (dont act) one of the other demons.
a calculator secondary class is indespensible also, have for instance an oracle (with equip gun) or a mediator with math skill secondary, throw shell on any team member he can (it does not matter if you land it on the enemies your not using magic anyway all your trying to do is soften the blow from the impending clops or being killed by a dark holy from the still actable demon)
by this point the demon that isnt sealed will have had his turn and vielus will have fired clops off, if you landed shell on your party, ramza and the ninja will have probably been hit by it and be critical (to let your ninja get away with it make sure your ninja has mp switch so the blow will just suck your mp away)
you lancer will finish his jump (if he took his turn after vielus and you aimed for vielus, which you should have done anyway they will land on him dealing a decent amount of damage)
now you have to move quickly as it wont be long till vielus recasts clops and this time it fires off a lot quicker...
Have ramza attack vielus and your ninja as well, have your lancer jump again and mustadio arm-aim the last demon (both the demons that are alive will be act sealed and wont bother you, giving you plenty of time to finish off vielus before they can act again)
have your oracle/mediator with math secondary cast re-raise from math skill (re-raise DOES NOT AFFECT BOSSES so it does not matter if it is going to land on vielus)
clops will fire off again and probably kill ramza and leave your ninja critical if you used hp switch, or both if you landed re-raise this will be cancelled out as they get reraised and itll be your turn again (as the demons cant act so they will just sit in the corner)
if your lancer again got his turn after vielus he will land on his head and you can probably finish off vielus within the next attack from ramza and your ninja.
congrats you just beat the hardest boss in FFT without using the cheap trick
quick breakdown class by class of skills equiped
Ramza: Guts, any secondary (punch art of break are usually good secondaries or possibly chemist with good potions) two swords, auto potion move +2
Ninja: Throw, any secondary, mp switch, equip sword (swords do a lot more damage than ninja blades at this stage of the game), move +2
Lancer: Jump, Chemist (this is so you have a secondary healer if things go wrong), auto-potion, throw-item (to allow your lancer to act like a chemist if needed), move +2
Mustadio: Gun, time magic (if you feel confident of throwing a haste or slow quick enough, but not neccessary),abandon (very useful as it can help you avoid gigaflares, or dark holy), equip armor (so you can sustain more punishment), move +2
Oracle/mediator: Primary, Math skill, dragon spirit (damage taken adds re-raise status), any (if oracle equip gun), move +2