Having scored seven goals against Liverpool before the international break, Villa just needed one to maintain its 100% start and move a point behind first-place Everton with a game in hand.
Barkley, one of the three changes manager Frank Lampard made at halftime, slid home the winner in the 63rd minute as the west London side joined Manchester United and Arsenal in last four.
Seven minutes later Spain’s Pedro, revelling in space, latched on to a fine through ball from former Everton midfielder Ross Barkley and picked his spot to the left of the advancing Jordan Pickford.
Barkley made nine appearances for Chelsea this season before injuring his ankle against Newcastle United last month and Lampard said the midfielder had still not fully recovered.