Tackle discrimination by encouraging people to treat and respect each other as individuals ("love others as themselves" etc).
Discrimination is a problem when people are judged according to stereotypes rather than according to their own individual merits, especially when they do not fit the stereotypes. It often arises as a result of stereotypes being accepted without question (i.e. "X belongs to group Y, so X must be Z").
What we thus need is to go "back to basics" on this issue, break down the popular misconceptions about particular groups, and when making generalisations about groups, emphasise that they are generalisations and not hard and fast rules.
A strong relaxation of "political correctness" is needed.
Political correctness is well-intentioned. The idea of cracking down on jokes that relate to discrimination, and clamping down on language that can be abused to perpetuate discrimination, is to get people to think twice about what they're doing and saying, and help break down the stereotypical thinking that way.
Unfortunately it does not address the problems as directly as simply encouraging people to respect others as individuals. Often jokes do not lead to discrimination- that only happens when the "jokes" are meant seriously or when the stereotypes are widely accepted without question in the first place. The emphasis on language is also wrong, as the most important thing about language is usually not the words that are being used, but the meaning that is associated with them. For example terms like "retard", "pikey", "ponce", "nonce" and "bitch" can have very strong meanings in some contexts, but in some circles are used quite harmlessly as general terms of abuse.
The obsession with "avoiding causing offence" also must be dropped. Most of us hold at least some views that at least the odd one or two might find offensive- even if the views are in themselves harmless. For instance some fragile people whose lives are heavily inconvenienced by snow may find the opinion "I love snow" offensive.
The line should be drawn such that personal attacks, and actions that impinge on the liberties of others (or views that necessarily lead to said actions) should be disallowed and all else should generally be permitted in the name of free speech. Even if it causes offence to some.
In addition we must remove the obsession with avoiding presenting anything that might be consistent with a stereotype. For example we censor Mammy Two-Shoes from Tom and Jerry cartoons because she represents a racist stereotype, but there are people out there who do fit the stereotype (or at least did in the 1940s)- so should we deny their existence while we're on with it (and censor Gone With The Wind, which provided inspiration for the Mammy character)? This kind of thing does nothing to address actual racism.
We also need consistency. At the moment, on the one hand we have strong provisions against some forms of sexism against women, yet other forms of sexism against women continue to run rampant. And nothing is done about sexism against men (e.g. the rule "you don't hit girls", which doubles up as "it's acceptable for girls to hit boys"). No discrimination of this kind should be acceptable.