For my main dragonborn, lvl 25 at the time:
Hircine's Ring
Savoir's Hide
Forsworn Gauntlets/Boots/Bow
Blackguard's Hood
Nordic Sword
Hide Shield.
As soon as the battle started, I used whirlwind sprint (level 1) to hide behind a pillar of books while Miraak used Dragon Aspect. From there, I fired off several arrows and again, would dodge his shouts with the same shout or duck behind the books. When he'd use the staff, I'd use Become Ethereal (level 1). Once he was low, I'd sprint up to him, smack him with my Hide Shield several times until my shout charge was up and use elemental fury and barrage him with attacks from my Nordic Sword. This was round one. When he killed his first dragon, I repeated the arrow stuff, but this time I used Slow Time (level 1) to avoid his shouts. Since the arrow thing wasn't as affective I would attack him with my blade over and over, timing it just right to stop his shouts with my shield. Coupled with Magicka poisons (Bought over 15 potent ones) He had no choice but to use his Sword. Round 2 done. When he killed the second dragon, I used a flurry of both techniques as the first and second rounds. I had to keep my distance because his shouts became way too frequent and way too dangerous. Arrows provided plenty of damage and with the Potent Magicka poisons I was able to force him to use that pitiful staff.
Final Round kicked in when all dragons were dead and I used Dragon Aspect (Level 3) and ran at him with Elemental Fury fully active, and two Nordic Swords in both hands (liek a baws) and with them dripping in poisons of Health and Magicka, Philters of Frost, Fire and Shock resistance coupled with a Philter of Magic resistance and Philters of the Warrior, Light armor (can't remember the name). He went down pretty damned hard.
And just for funsies, Magicka was 100, Health 200, Stamina had the rest. I had to keep moving or I'd be dead in a few minimal hits.