They don't live at the ports of call. They may get off the ship to buy a few items, or just as a break, but it's not like they have to pay for a place to live or even for food. They don't even have to get off the ship.
Their "accomodation, meals, and medical" are all free to them on the ship, paid for by the cruise line.
The cruise line pays for them to travel to and from their assignments.
I think many of us are also wondering why service charges keep going up. Many suspect that some of that money isn't going to the staff.