One way to look at it is that you COULD add it up as 30 - 5 + 3 + 2, but you can still solve this riddle carrying with the 9 x 3 mentality.
They payed 9 dollars for the room each, this is true. But the room only cost $25 dollars. The extra 2 dollars resulting in $27 are the two in the bellhop's pocket. They are already included in the 9 x 3, so it's wrong to add them again. Instead, once you have 9 x 3 = 27 you should add the three unspent dollars each businessman recieved back.