Rhodes, who has now hit five goals in three games since joining from Ipswich, tapped home the rebound after 49 minutes when Davis brilliantly parried his well-placed penalty.
The spot-kick was awarded for a trip by Chris Perry on Lee Novak, who was twice denied by wonder saves from the former Sunderland stopper.
Southampton striker Rickie Lambert levelled after 54 minutes with a header that went in off the bar from Adam Lallana’s corner.
Rhodes put Town back in front with a glancing near-post header from Anthony Pilkington’s left-wing cross after 68 minutes.
Davis, who saved a penalty in a 1-1 draw with Millwall last week, made another outstanding stop after 83 minutes when he scrambled to turn a header from a Southampton defender on to the post – but Antony Kay was on hand to head home the clincher.