I think this is mainly an enforcement and punishment issue. I don't know the situation in other countries, but here in Germany you are only allowed to honk if there's a danger. Enforcing this rule with a hard penalty (500+ Euros or something like that) would do wonders to cure people of their "I will honk in every damn situation" mentality.