Real Madrid midfielder Luka Modric opened the scoring in Zagreb from the penalty spot in the 13th minute, after Greek goalkeeper Orestis Karnezis brought down striker Nikola Kalinic.
Croatia doubled their lead six minutes later when an unmarked Kalinic flicked in a low cross from Ivan Strinic.
The visitors pulled one back on the half-hour mark when captain Sokratis Papastathopoulos scored a header from a corner.
But just three minutes later, a quick Croatian attack down the right flank ended with Inter Milan winger Ivan Perisic powering home a close-range header at the back post.
Andrej Kramaric tapped in to increase Croatia’s lead four minutes after half-time and leave Greece with it all to do in the return fixture on Sunday in Piraeus.
“It was a great match … But this is only the first half, we should not relax. Nothing is over,” Croatia coach Zlatko Dalic told television channel HRT.
“These are excellent players who don’t need much… A bit of support, trust.”
Dalic was named as head coach in October after Ante Cacic was sacked following a damaging 1-1 home draw with Finland, as the team ultimately finished a disappointing second to Iceland in Group I.
“We played a great match… But we have only done half of the job, we should have a good rest and play a good match there (Greece) on Sunday,” Modric added.
“We could have scored more goals, but 4-1 is a great result.”
Papastathopoulos labelled the match a “horrible night” for his team.
“We made unbelievable mistakes, conceded too many goals which is not typical of us at all,” he told reporters.
“After this, it’s practically 90 percent likely that we will not go to the World Cup. Of course, we will fight on Sunday but we also have to be realistic.”
The two countries’ football federations have agreed that both matches will be played without visiting fans for security reasons.
Croatia are looking to qualify for their fifth World Cup since 1998.
Download our app and read this and other great stories on the move. Available for Android and iOS.