have you offered the hotel room to them and are sure they'd be offended? I mean, they might be offended if you wouldn't let them stay and they thought they had to pay for it, but a paid for hotel close to your house might seem like a treat. Could you compromise with DH, say you will host them if they prefer, but he has to call them tonight and say "Mum, was thinking, it's really rubbish you have to sleep on the floor as we can't afford a guest room, HollieHelen and I wondered if you'd rather we paid for a hotel room for you near by. If you're happy to sleep on the floor you're welcome, but we thought we'd offer you the hotel option, and I will insist on paying for your room. You can be here all day I just feel bad I can't offer you a comfy bed."
See what they say, put like that, they might prefer it. He's still 'hosting' them, just in a hotel/B&B.
and the SIL does sound like she needs medical help - that's not normal.
(the affair is a side issue, although I can see why you'd be reluctant to stand up for yourself now, you can't, however let it be a stick he beats you with every time he doesn't get his own way, or else you're going to end up having another affair, and this time not staying with him)