On 15 May 2007, Sullivan returned to Doncaster. He became the regular first team keeper and his consistent performances throughout the 2007–08 season helped Doncaster to promotion. He made an error in the 2–1 loss to Yeovil Town on 21 March 2008, mis-controlling a backpass which led to a Yeovil goal, but the disappointment of this mistake was over-shadowed by a very successful season between the sticks, in which Sullivan kept an impressive 20 clean sheets. He overcame this to help Doncaster win promotion to the Championship with a playoff final win over former club Leeds United, leaving them in the third tier of the Football League for at least another year.