Why don't they teach tolerance for cheating, smoking, drug abuse, illiteracy, litter-bugs, non-recyclers, political conservatives, etc? Why? Because they would never included something on the list that they thought of as negative or bad. That's really the point. Homosexuality is named because they want to teach acceptance.
My brother is an alcoholic and no one is teaching school children to be tolerant of that. What a bunch of bigots.
Are you kidding. Of course the public schools teach tolerance of all those societal problems you mentioned.
They come under the category of root causes searches designed to excuse bad behaviour.