I beat him by farming materials to make 6 stuffed bull testicles at Valdo's place, but i just needed 3 or 4 for Dodoro's fight. I used the dragon sword (which is actually required to wake him) as well as the hellish buttplug and cock ring. Altough maybe the angel combo may be enough with 6 bulls testicles, and my character is a bottom. Just use the bulls testicles whenever he is about to beat you in the next move and spam his weaknesses.
Just like possessed Grant, he changes his prefered position along the fight, so check the color of his aura before selecting your move. His weaknesses are:
When green (bottom):
1st stroke his ass
2nd slap his ass
3rd finger him
4th rim him
When blue (top):
1st wink
2nd cup his balls
3rd suck his nipples
4th suck his cock
When purple (versatile):
1st caress your package
2nd flex your package
3rd lick his ear
4th frot with him
After defeating him, you get a cutscene (with an underwear) where you get fucked by him and you receive excaliballs, which is the strongest sword in the game, with power 100 - the double of dragon sword itself. Also, you'll be able to randomly face cleansed Dodoro in solitude peak instead of one of the Dark Knights to easily farm the black balls for buying the one true combo. His new weaknesses are:
When purified (top):
1st show off your ass
2nd cup his balls
3rd french kiss
4th ride his cock