The home side enjoyed the better of the first half, with Ricardo Fuller dangerous in attack, but the Royals went closest to breaking the deadlock through Royston Drenthe's free-kick, which was saved by Matt Gilks, and Jem Karacan's 18-yard effort that came back off the crossbar.
Gilks then saved at the feet of Adam Le Fondre in the second period but substitute Barkhuizen stole the show with a run and finish on 75 minutes to seal the points for the hosts.
Reading's central midfield pairing of Karacan and Danny Guthrie were struggling against the Tangerines' dominant midfield trio and Paul Ince's side fashioned their best opportunity of the half midway through the opening period.
More top news
A woman is warning that a child will die if the speed limit isn't brought down at one of the South's busiest beauty spots.
Simon's Blog - Warmest Day Of The Year...
Did you know you'll need to spend your round £1 coin before 15th October? After that they will no longer be legal tender.