The four-time Formula One world champion, whose advantage was trimmed to six points following his title rival's thrilling triumph in Barcelona a fortnight ago, started second on the grid but went on to claim a third victory of the season after executing a successful overcut and coming out in front of Raikkonen following a pit stop on lap 39.
Vettel's victory was Ferrari's first in Monaco since 2001. A first one-two at any circuit for seven years means that F1's historically most successful team now move ahead of reigning champions Mercedes by 17 points in the constructors' championship.
"It feels unbelievable," Vettel said on the podium. "It was a very intense race. I hoped to have a better launch at the start and I had to be patient. The tyres started to slide in the first stint and the pack were catching up a bit but then I had a second attempt and had a couple of laps where the car was really, really good.
"I was able to use that window to come ahead and after that I could control the race.It was really difficult after the restart with the cold tyres. We couldn't plan much. We tried to pull away which we did. At that point the window opened. Kimi responded to Valtteri's stop. I tried to push as hard as possible and I was surprised to come out in front."
A clearly dejected Raikkonen added: "It is still second place but it doesn't feel awful good. It is how it goes sometimes but we go to the next race."
Daniel Ricciardo claimed third place in the principality after jumping both Valtteri Bottas and the frustrated Max Verstappen.
Carlos Sainz did brilliantly to claim sixth for Toro Rosso and hold off a speedy Hamilton, who, having failed to advance to Q3 during a disastrous qualifying session yesterday, began the race 13th and managed to fight his way up to seventh on a street circuit in Monaco where overtaking opportunities are extremely rare. He took six points and the top 10 was rounded off by Romain Grosjean, Felipe Massa and Kevin Magnussen.
Jenson Button retired on lap 58 after sustaining suspension damage during a botched attempted overtake of Pascal Wehrlein at Portier that saw the latter's car flipped sideways into the barrier. Thankfully such an incident looked worse than it was and the Mercedes protege walked away unscathed.
Sauber teammate Marcus Ericsson managed to crash under the subsequent safety car, while Stoffel Vandoorne smashed into the wall late on, on another day to forget for troubled McLaren. Their search for a first point of 2017 goes on. Seven cars in total failed to finish the race, with Daniil Kvyat and Williams rookie Lance Stroll both retiring.
After a one-week break, the F1 roadshow will roll into Canada from 9-11 June.