1 - A Free company cannot buy more than 1 house in a period less than 24 hours after a buy.
2 - A player cannot buy another house in a period less than 1 hour. Note: This is account restriction, not character.
3 - A player cannot sell a house directly in less than 45 days, if he wants to get rid of the house, it will simply reset the state and re open to buy at a random day and time.
4 - Players who already have a house, have less priority over player who don't have houses (how so? Make 2 wards exclusive for players without houses) again, this is by account, not character.
Those are some of the simple solutions, but of course there will never be houses for everyone, it's pretty much impossile to archive.