Hamilton had complained bitterly about the wayward behaviour of his F1 W05 Hybrid on the soft Pirellis, and then of brake vibrations on the supersofts, but found it better when he put together his best lap of 1m 47.490s.
Rosberg, meanwhile, was fastest on the softs with a best of 1m 49.075s, and had just set the fastest first sector on supersofts when the session was red flagged after Pastor Maldonado crashed his Lotus into the wall at Turn 10.
Thereafter, Rosberg never put a good lap together on the tyres, and elected not to use another set. Thus he was left down in an unrepresentative 13th overall.
Vettel, meanwhile, had his car in pieces for all but the final ten minutes as his crew changed the faulty engine that had caused him to stop right at the end of FP1. Then he showed why he won four world titles by jumping up to fifth place with 1m 48.115s and then trimming that to 1m 48.041s.
It was Fernando Alonso who took second spot for Ferrari, 0.133s adrift of Hamilton with 1m 47.623s, as Daniel Ricciardo was third on 1m 47.790s in the second Red Bull and Kimi Raikkonen fourth on 1m 48.031s in the other Ferrari.
Kevin Magnussen and Jenson Button gave McLaren the sixth and seventh fastest times of 1m 48.358s and 1m 48.435s respectively, and Sergio Perez and Nico Hulkenberg were eighth and ninth for Force India on 1m 48.653s and 1m 48.751s. Daniil Kvyat rounded out the top 10 for Toro Rosso with 1m 48.770s as team mate Jean-Eric Vergne backed him up with 1m 48.800s.
Despite Maldonado's latest meeting with a wall, Lotus made some progress as Romain Grosjean dealt with clutch problems and jumped up to 12th on 1m 49.062s ahead of Rosberg, and the Venezuelan was 14th on 1m 49.139s. Behind the second Mercedes and the second Lotus, Sauber took 15th and 16th. Adrian Sutil lapped his C33 in 1m 49.170s and Esteban Gutierrez his in 1m 49.290s.
Williams did not better 17th and 18th, with Felipe Massa on 1m 49.361s and Valtteri Bottas on 1m 49.971s.
Marussia continued to hold the upper hand over Caterham. Jules Bianchi lapped in 1m 50.612s, nearly a whole second ahead of team mate Max Chilton on 1m 51.558s. Despite another spin, Caterham's Kamui Kobayashi was 21st on 1m 52.075s, while Marcus Ericsson lapped his CT05 in 1m 52.936s.