I think it will be difficult to get a satisfactory result, especially just using Model Builder. I think you will have to investigate scripting this.
One approach you could try is to use Hawth's tools to populate your parcels with a number of points at your density, setting the point-to-point separation and separation from the polygon edges appropriately. Then identify the approximate orientation of the parcel using the Calculate Polygon Main Angle tool in the Cartography toolset. Then do joins (spatial and otherwise) to attribute your points with the all the information required (including the polygon orientation). Now write a script to generate square or rectangular (to taste) buffers around the points, aligned to the polygon orientation (this is why you need to specify their separation in Hawths tools).
If you want just one building per parcel, then you could align it to the polygon center (ensuring to specify that the centroid falls within the polygon when you calculate it). You could still use the parcel orientation trick.
I hope that helps or gives you some ideas to work with.