Croatia started the game in third in the group, level on four points with Serbia and Belgium, after their previous outing saw them claim a narrow 1-0 win over Friday's opponents.
Nikica Jelavic scored the only goal of the game that night to leave Macedonia second bottom with just one point.
But it was the hosts who took the lead on Friday when Agim Ibraimi drilled a left-footed shot low into the centre of the goal in the 16th minute.
Little was created by either side as the first half wore on before Croatia levelled 12 minutes before half-time.
Ivan Rakitic sent in a corner from the left which found Vedran Corluka and the defender slotted a right-footed shot into the bottom left-hand of the goal from close range.
The game was evenly balanced after the break, Mario Mandzukic shooting wide for Croatia and Ivan Trickovski doing the same for Macedonia.
However, on the hour mark it was the visitors who went ahead, Ivan Rakitic drilling the ball home from 25 yards.
Macedonia attempted to get back into the game, Ibraimi's drilled left-footed shot from the right taken by Croatia goalkeeper Stipe Pletikosa with Goran Pandev also having an attempt.
As the game went into injury time, Croatia almost doubled their lead when Darijo Srna's 30-yard free-kick hit the post.
Pandev attempted a curler with seconds left but Pletikosa was equal to it as Croatia held on.