Champions Atletico Madrid moved into second, two points behind Barca, as they beat previously undefeated Sevilla 4-0 at home.
Meanwhile, Cristiano Ronaldo’s hot scoring streak continued in Real Madrid’s 2-0 win at Villarreal to remain four points off the top in fourth.
Barca stretched their run of consecutive clean sheets to seven games, but rediscovered their scoring touch after being held to a 0-0 draw at Malaga in midweek as Messi and Neymar shone.
“Messi is someone who has been touched by a magic wand and he is desperate to enjoy playing football,” said Barca boss Luis Enrique.
After a slow start Barca took the lead on 26 minutes as Neymar was gifted the ball inside the Granada half and surged forward before seeing his effort deflect pass the helpless Roberto via Jean-Sylvain Babin.
Messi then increased his number of assists already this season to seven as he crossed right-footed for Ivan Rakitic to head home and Neymar tapped into an empty net to make it 3-0 after Roberto had denied Munir.
Barca continued to dominate after the break and Alves provided Messi with the kind of service he has been handing out in recent weeks with a fine cross that the four-time World Player of the Year headed home.
Messi returned to being the provider for Neymar to complete his hat-trick with a cut-back that the former Santos man dispatched low past Roberto.
And the Argentine rounded off a fine afternoon by robbing the Granada defence of possession and running through to slot home his fifth goal of the season and the 400th of his career.