The ageless Movistar rider finished ahead of Mitchelton-Scott's Daryl Impey and Australian Jay McCarthy (BORA-hansgrohe) to claim his sixth victory of the season.
Valverde, the defending champion, now sits four seconds ahead of McCarthy on the general classification while Impey is third at six seconds after the 175km stage from Mataro to Valls.
"We spent the whole day at the front of the bunch because of the strong winds, which could have caused some splits as we saw in previous years," Valverde said. "After the break was caught, a window opened for us to go chase the bonus seconds, so we went for them.
"However, it wasn't on the team's plans to aim for the stage win, not at all. It was just that [Mitchelton] Scott got through the final climb at a really strong pace, and with the bunch strung out and many sprinters dropping, it was easier for us to seek for a good position into the main field - that was where we chose to go for the win.
"The finish was slightly uphill. I knew it well, and I kept in mind that it was good for me, and the work by José Joaquín [Rojas] from the summit of the climb was phenomenal, he kept me at the front at all times. I've won here in Valls with a solo attack, into a sprint."
Valverde, who dedicated the Stage 2 victory to his son who recently broke his shoulder playing football, will take his lead into a changed Stage 3 after weather conditions forced organisers to drop the major climb to Valter 2000.
Reduced from 199km to 153km it will take the peloton through avalanche free roads from Sant Cugat to Camprodon and over shorter climbs.