Ben Cohen, making his first Test start in over a year, and Mark Cueto scored the tries while Charlie Hodgson contributed 11 points from two penalties, a drop goal and touchline conversion.
The Wallabies hit back from 13-6 down to level the game at 16-16 with a try from Drew Mitchell - but Olly Barkley's 50-metre penalty and Cueto's score five minutes from time sealed the win for England.
Andy Robinson's men, playing their first game for seven months, looked rusty early on and trailed 6-3 from two Mat Rogers penalties before their giant pack took control and set the platform for Cohen to score in the corner after 27 minutes.
Wallabies captain George Gregan was sin-binned for tackling Matt Dawson offside and Australia's scrum crumbled on their own five metre line. The ball was spread wide and Josh Lewsey fired a 15-yard pass for Cohen to dive over in the corner.
Hodgson converted and then dropped a goal straight after half-time to extend England's lead.
Hodgson and Rogers exchanged penalties before Australia hit back with a try from Mitchell, who was driven over by Lote Tuqiri after Chris Latham's break.
Rogers' conversion levelled the game before Barkley, on for Hodgson, landed his penalty effort from half way.
The game was reduced to uncontested scrums when Wallaby prop Al Baxter was sin-binned and Matt Dunning was stretchered off with an apparent neck injury.
But England kept the pressure on and finished the job with Cueto's try, condemning Australia to a record-equalling seventh straight defeat.