Okay, just because it is so hard and it's fun to brag, I'm going to run down how I beat him. It went really quick, but that doesn't mean it was easy. I tried and failed a TON of times first, before deciding to go back to that guy in Amkethran and loading up on stuff like lower resistance, cone of cold, ice storm, skull trap, greater malison, and secret word. This made all the difference.
As soon as I saw him and he talked to me I paused. I have three tanks (minsc, valygar, sarevok) with boots of speed, and a monk, so they're all really fast. I gave them all greater whirlwind and sent them to rush for draconis. I also (while paused) set Aerie casting oracle and Imoen casting breach. I then unpaused. Draconis cast stoneskin and (i think) mirror image. My tanks were on him instantly, and soon after oracle was finished, so he was visible. Right after, breach was done, so now he's completely vulnerable, and it only takes seconds before he's near death. I had done this about five times and had it down to a perfection.
I paused quicky, but he'd already cast all his protection spells. I gave all the fighters whirlwind again and set imoen to cast spell strike, and aerie to cast cone of cold. The spell strike barely hit him but it took all of his protections away. He of course wing buffetted me, and we all went flying but everyone survived. He reappeared right in front of imoen and aerie. My fighters got whirlwind once again and closed in. I started to cast cone of cold with imoen but he nuked her right away. I send aerie running and my fighters reach Draconis. They start tearing him apart and aerie nails him with a cone of cold. She also casts ice storm, but before it starts, sarevok lands the killing blow and Draconis is dead.
I was jumping up and down and screaming at the monitor.