Former Manchester City defender Aleksander Kolarov scored on 55 minutes and the visitors held on despite Nikola Maksimovic's 68th-minute red card.
The Republic were much improved from the 1-1 draw in Georgia but the defeat drops them to third in the group.