Hosting plans and domain names are pretty cheap if you shop around online. If you get a plan with reasonable space, it should be no trouble to host small websites for businesses in separate subfolders, with a domain name assigned to each subfolder (eg the files are hosted at
http://www.yoursite.com/realestatewebsite, which will use realestatewebsite.com. Visitors to the website will only see realestatewebsite.com, not yoursite.com).
You shouldn't need dedicated hosting or anything too fancy for business websites that are only a few pages. If you want to use databases, make sure your hosting plan includes MySQL.
One other thing that probably goes without saying, but if they're insisting that you host the website then they should have to pay any yearly fees on the domain name. I'd also charge them an annual hosting fee and possibly a percentage of the setup fee if one applies.