The Englishman set the pace initially with 1m 38.395s from the German on 1m 38.508s, but with less than 20 of the 90 minutes left Fernando Alonso supplanted them in his Ferrari with 1m 37.953s.
The Mercedes pair headed back out and subsequently redressed the situation, Hamilton improving to 1m 37.502s and Rosberg to 1m 37.733s.
Nobody ran Pirelli's soft tyre, so all of the times were set on the medium compound rubber. Well, Alonso made one attempt with the softs, but there was only one, fitted to the left front of his F14 T, and he stopped yards from his pit as soon as he realised that it had incorrectly been matched to the three medium tyres on the other wheels. The car was quickly wheeled back so that the rogue tyre could be switched.
Nico Hulkenberg was once again a front runner for Force India, lapping his VJM07 in 1m 38.122s to take fourth ahead of the McLarens of Jenson Button and Kevin Magnussen, who sandwiched Kimi Raikkonen's Ferrari. Button lapped in 1m 38.636s, Magnussen in 1m 38.949s. Raikkonen provided an exciting moment when he locked up heavily going into Turn 1 (as Rosberg did later), shortly after posting his sixth fastest 1m 38.783s.
Daniil Kvyat was again impressive for Toro Rosso, lapping confidently in 1m 39.056s to head Force India's Sergio Perez on 1m 39.102s, as Sebastian Vettel had a relatively low-key session to take 10th on 1m 39.389s.
Felipe Massa sat out all but the final 33 minutes before lapping his Williams in 1m 39.533s for 11th, with Jean-Eric Vergne 12th in the second Toro Rosso on 1m 39.862s.
In 13th place came the first of three substitute FP1 runners, as Williams's Felipe Nasr, standing in for Valtteri Bottas, did a reasonable job to post 1m 40.078s. That left the Brazilian ahead of Daniel Ricciardo who recorded 1m 40.406s in his Red Bull. Next up were Adrian Sutil for Sauber on 1m 40.652s and Lotus's Pastor Maldonado on 1m 40.793s. The Venezuelan achieved the second highest lap score with 31, which was a major fillip for the team.
Jules Bianchi looked good for Marussia with 1m 40.889s, ahead of Sauber sub Giedo van der Garde - replacing Esteban Gutierrez - who struggled with his C33's brakes on his way to 1m 40.913s. Romain Grosjean complained about oversteer in his Lotus E22 on his way to 1m 41.036s, while Max Chilton recorded 1m 41.794s in the second Marussia.
At the back Caterham sub Robin Frijns, standing in for Kamui Kobayashi for FP1 only, narrowly beat team mate Marcus Ericsson. The Dutchman did the most laps - 35 - but struggled with the CT05's handling throughout and could not better 1m 42.417s as Ericsson did 1m 42.711s.
Second practice is expected to be more representative of race conditions as it starts at 1800 hours local time, when darkness will be descending at the same rate as the track temperature. That's when the soft tyres should come into their own.