Palacio's 10th goal of the season, which came when he met a Fredy Guarin cross from the right with a delicate touch that left Milan keeper Christian Abbiati standing, lifted Inter to fifth place on 31 points.
"For me it's my most important ever goal in the most important derby in the world and I'm very happy both for me and the team," the Argentine striker told reporters.
Milan's defeat meant they have only won one league game in two months and are languishing in 13th place on 19 points, only five away from the relegation zone, after a poor performance in which Sulley Muntari was sent off in stoppage-time following a late scuffle.
"I couldn't celebrate too much after the goal because often when we take the lead we give away an equaliser straight away, like we did with Juventus," said Inter boss Walter Mazzari following his first derby win.
"We risked it again tonight and the way we played the second half it would've been a real shame.
"In the first half we suffered but we gave ourselves a good shake in the changing-room at half time and in the second period we played as we know how."
The victory could have been easier had Inter been given a penalty five minutes before the break when Palacio was clearly brought down by Cristian Zapata's clumsy challenge.
"We can't count on getting penalties as we saw today. It was a clear stonewall penalty," added Mazzari.
Struggling Milan played with passion but little quality, even though they should have taken the lead when Andrea Poli skied his shot after Samir Handanovic flapped at a 29th minute corner.
A subdued Mario Balotelli forced a smart save from Handanovic in the second half with a curling strike but they created little else and ended 2013 in the most miserable fashion.
"For an hour I think we played well," said their visibly irritated coach Massimiliano Allegri.
"I don't think Milan have been able to play a full starting 11 in six months. In 26 matches Abate and De Sciglio haven't once played together.
"We played with 10 men for 80 minutes with Ajax, then played well against Roma, and then tonight the team did very well, but in the last 20 minutes we paid for that."