Portuguese striker Joao reached 20 goals for the campaign in all competitions before defender Michael Morrison quickly wrapped up the Royals' win on the road – both goals coming in the closing stages of the first half.
Ashley Fletcher converted a penalty and teed up a fine goal for Duncan Watmore as Middlesbrough edged out Huddersfield 2-1 at the Riverside Stadium.
Isaac Mbenza's second goal in as many games had visitors Huddersfield ahead early on, before Watmore levelled the scores.
Fletcher's first league goal of the season from the spot sealed the win for Neil Warnock's men, who had Paddy McNair sent off 10 minutes from time.
Andre Wisdom grabbed a stoppage-time winner as Derby beat Wycombe 2-1.
Wanderers striker Uche Ikpeazu scored for both teams, heading into his own goal before equalising from a penalty, but in the fourth minute of stoppage time Martyn Waghorn curled a Derby free-kick against the post and Wisdom tucked away the rebound.
Steven Fletcher bagged his third goal in five games as Stoke snatched a 1-0 win over Sheffield Wednesday.
Fletcher's seventh league goal of the campaign ensured the hosts took all three points, flooring his former club.
Joao Pedro's first goal in seven matches proved enough for Watford to see off Preston 1-0 on the road.
Cardiff fired two goals in four second-half minutes to seal a 2-0 win at Preston.