You could do a spatial join with both features. When working with polygon features of populations (houses per zip in your case) you will have to embrace the assumption that the density of houses are evenly distributed across the polygons.
Prior to you spatial join, add a field to your zip polygons and call it OriginalArea, and calculate it equal to the ShapeArea field.
After you perform your spatial join, the zip polygons will be 'smaller' in area. But you have the original area, so you can divide the new area by the original area and the the ratio between the to. Multiply the number of housing units by the ratio and you'll get the approximate number of units in your study area.
That should just about do it....