The general approach for performing this kind of disaggregation is through dasymetric mapping, which uses ancillary data to inform the spatial distribution of a phenomenon, and is often used for population analyses, such as this one in San Francisco. This paper provides good background on the technique, and if you're working in ArcGIS, scripts have been developed to assist in creating the maps. Unfortunately, there isn't much built-in support for the approach in other packages, though it isn't too difficult to do manually with reclassification.
Paper reference:
@article{mennis2003generating,
title={Generating surface models of population using dasymetric mapping},
author={Mennis, J.},
journal={The Professional Geographer},
volume={55}, number={1}, pages={31--42},
year={2003},
publisher={Routledge}
}