Part 1 - Instance and Ghost housing
One solution would be this:
(Instance house/or maybe even plot housing)
Have an NPC that sells ghost plots. Meaning paying for a plot that doesn't exist in the game. So long you have the money you can just pay it.
Pros: Zero randomnesses, Zero obstructions and 100% availability so long you have the GIL.
[If instance]
Then once it is paid, you will immediately receive the plot
[If normal plot]
Then once it is paid, you wait for the next "Ghost housing implementation patch day" where Square Enix will launch those houses for people used the NPC to buy the house. That way there will be no oversupply and won't stress the server. You will get it eventually maybe wait for a month or two instead of never getting it. This will also give you (developers) time to put in plots/wards that will balance out demand/supply. Everyone will get a house, so long they can pay for it. That should be the only ceiling of getting the house.
Also, 1 house for personal and 1 for FC. This is key.
Part 2 - Condominium > Apartments
Change apartment to Condominium
The condominium will be a duplex type condo meaning there will be two floors and will be the size of a small house. A balcony can be purchased as an upgrade for gardening.
Put fun into getting a condo, you can add Condominium utility which everyone in that condo unit can share these utilities, these utilities would be:
1) A gym - training dummies for everyone to use
2) A SWIMMING POOL (So people can swim and stuff)
3) Workshop (Where people can use crafting station for a small fee)
4) BBQ pit! People can buy food there and be a gather spot for people to chill and meet with her condominium owners!
5) ChocoPark (Carpark) where you can park your chocobo there and do Chocobo stuff
6) Condo transport to people to Exploratory Voyages.
These will help because you will then eliminate the need for people to get their own house because they can do everything in it!~
PLUS IT IS AN INSTANCE thus helping with the server stress if any.