Hi Vinod,
I would suggest you to go with one sales order and One Project for each villa
because sales order is specific to one customer ( one sold to and one ship to)
in the Project you can structure one WBS at Header as Billing element and assign below to it subsequent WBS such as (land acquisition, Engineering, design, construction and miscellaneously) and this individual WBS will in turn have networks and activities based on the phase.
Finally post the actual cost to Each of the WBS and settle to Main WBS
Assign this main WBS to each sales order at line item level to populate actual cost to sales order line using DP91
if you have Milestone billing , you can configure Sales order line item with Billing plan and get 20% as down payment from customer, before you release Project and bill respectively
hope this is useful
thanks
santosh