Doncaster moved four points clear of the drop zone as Billy Sharp made a hero's return in a vital 3-0 win over 10-man Charlton at the Keepmoat Stadium.