So, this one pretty sucks, because it feels like a very luck-based battle to do damage-free. However, that is not the case, it's just a very particular method.
-Note 0: Dagron has 400 HP, so make sure your Hair Upgrades are both maxed out and that you have at least 1x of Super Pike Ball and Super Monster Milk before doing this.
-Note 1: Dagron follows a simple pattern of sweeping from alternating sides, so as long as you pay attention to which way he came from last you know which way he will come from next.
-Note 2: The hitbox for Dagron's head seems pretty small (and moves a lot) and THAT is what you have to hit to knock him down for the good damage. It will likely take a few practice runs to get down the exact jump height.
-Note 3: Dagron's tail is large and swings around a LOT. Even when it seems your safe if you aren't careful it may just swing right into you mid-jump.
-Note 4: As long as there are any blocks down, his attacks are focused on destroying those, not directly attacking Shantae, which can throw off your movement if you are treating his attacks as targeting her.
-Step 1: As soon as the fight begins, run to the right and Sword Dash into the right block to drop the three rocks so you can reach Dagron's head. DO NOT JUMP ON THEM YET.
-Step 1.5: Activate Super Pike Ball AND Super Monster Milk now! You need all the damage you can get, and if you succeed you'll only need one of each (because the fight will be done in about two rounds).
-Step 2: Stay in the corner as Dagron will sweep down to destroy at least one of them. NOTE THE DIRECTION HE CAME FROM, now you know his pattern!
-Step 3: Jump onto the rock that is farthest from where Dagron is going to sweep from (so if he is going to come from the left, go to the farthest right rock).
-Step 4: As he sweeps down to destroy the one(s) closest to him, this is your opening to jump in range and smack him in the head with your Hair Whip! If you hit him right he'll suddenly recoil and collapse to the ground. Beating time!
-Step 5: Get in range and start Hair Whipping him as fast as you can! (Make sure the Super Pike Balls are hitting too!)
-Step 6: As soon as he starts moving again, run to the safe corner to avoid his tail!
-Step 7: Most likely all three blocks are broken at this point, so you're back to Step 1; only make sure you Sword Dash the block opposite from where Dagron is going to sweep in.
-Step 8: Continue repeating until Dagron is defeated! (Should only take two times of knocking him down if you do it right with max upgraded damage).
If you are really lucky, as I ended up being in the attempt where I finally succeeded, Dagron will not destroy the final block as he gets up from Step 6 and you may get to finish him off with the first set of blocks. It's not likely, but will be a bit faster if it happens. Also if the last one is on the side he will sweep in from, don't even try it, you're asking to get hurt if you do.