Bristol City's expensive striker Nicky Maynard scored his fourth goal in eight days to give them back-to-back wins for the first time this season.
He was on the scoresheet after 23 seconds at Watford on Boxing Day and this time he took 90 seconds to swerve a shot past Palace keeper Julian Speroni.
It was enough to separate the sides, although Palace, who had the better of the second half, will feel they deserve a point.
Their best chance of that came when Nick Carle's low drive was cleared off the legs of keeper Adriano Basso who knew little about it.
Both sides were ready to test the other physically but City, with Maynard's goal behind them, ought to have built a solid lead by half-time.
The lively ex-Crewe player, who cost £2.25million in the summer, was pushed off balance by Danny Butterfield when he was shaping for a shot and then saw another effort go wide as Butterfield and his keeper ran into each other.
Butterfield collected the only card of the first half but also produced one of the more memorable attempts on goal with his thundering long-range shot rising an inch over the bar.
It was City's new three-strong frontline though which continued to impress, although without the quality of the final ball to worry Palace.
Ivan Sproule found the far post with a low drive but Neil Warnock's team showed their dangerous side when Paul Ifill smashed a shot against the bar.
They came even closer early in the second half when Carle, who joined them from Bristol City in the summer, saw a 25-yard free-kick turned away from under the bar for only their second corner.
Palace were now much more assertive in midfield with Lee Hills and Carle pressing hard on defenders leading to the Australian's unlucky attempt to equalise.