The government has failed to sell enough land to meet its targets for affordable and social housing, MPs say.