Hiring Green card holders or Indian's of American citizenship is a different matter. They aren't gonna work for the salary of an Indian citizen on H1B. The equation changes there.
I agree, there could be a cultural angle. But I don't think that is the main reason.