I am not contradicting what you are asserting. There are caste biases and it prevails in high societies and posh localities also. And the trend do not exist in Gujarat alone, but across the country.
However, the reason is not merely that people have any hatred for Dalits or tribal. There is another aspect to the growing divide in our society between Dalits/Tribes and higher caste people. Have a look at the law and you will realise. The powers given to the Dalits and Tribal under the Prevention of Atrocities on SC/ST Act has made people afraid of them. A higher caste person ensures his jail visit if he dares picking up a quarrel with the Dalits or tribes. A single complaint by the Dalit or a tribe that the higher community man had hurled caste-based abuses and he is gone behind the bars. There is jail term for the higher-caste man, framed in SC/ST Act, for failing to prove his innocence but there is no punishment for the complainant if it is proved in the court that he tried to frame his rival on false charges.
It will be a next to impossible job if a higher caste man wants to vacate his house from an adamant Dalit tenant.
If you ask me, I will say that I am afraid of going to jail for no reasons or on false charges. And for that matter, no one would be interested in going to jail for the crime which they haven't committed.
Police officers in Chhattisgarh say- 'Dalit aur Mahilaon Se Naa Ladna, Kyonki Tumhari haar Nishchit Hai.'
Hatred is not the only reason always. There is no denying that there is exploitation in society and there is need for SC/ST Act but there is also the need to check the misuse of the laws.