If the Red Cross wanted to develop better information, I guess they could ask if somebody has had unprotected homosexual sex within since 1973 and then follow up with HIV testing questions and ask if they have done so within the last six months. However, from their point of view, it is more practical to just exclude the entire population, and take blood from a lower risk group. The increase in the number of available donors that would result from a more thorough screening is so small that the added complexity and possibility for tragic error is not justified.
It's a practical issue, not a civil rights one. Nobody is denied a civil right because they are unable to give blood. In fact, one can donate and have a completely confidential way to opt out from having their blood transfused, if one is under societal pressure to donate.
PS. I used the confidential opt-out on a blood donation once, for an unrelated reason. I had been taking malaria preventative medication in the previous six months, but we had a big blood drive at work and everybody was expected to pony up. I did so, but used the confidential opt-out sticker to make sure there would not be a problem with my blood. There were no problems whatsoever.