Capitalism has a deep-seated taboo against taking recreational drugs. So strong is the taboo they will ruin your life and exile you from mainstream society for doing something recreational.
This is changing a bit as the scientists tell them there is basically no reason for this. But the scientists meet with resistance from entrenched cops, judges, lawyers, who are very about it.
What’s the materialist explanation for this moralistic taboo?
All the people you mention as being against drug use make their money/employment from prohibition.
The public generally opposes legalisation because they rightly see that drug addiction causes enormous harms, and they want to keep that away from their children and communities. But there is a kind of vicious circle here in that the harms of addiction, and indeed addiction itself, is largely driven by prohibition. Example: compare legal methadone with illegal heroin (the former is not culturally desirable, and those who adhere to a methadone program are often healthy enough and successfully quit using, etc. Likewise the methadone program is not a driver of organised and petty crime).
‘Lighter’ drugs like LSD are victims of cultural puritanism and decades of drug war propaganda. A hangover of Victorian era morality.
To some extent the drug war was designed to criminalise minorities and the counter culture. In any case, drug prohibition was allowed to expand whereas other prohibitions (gambling, alcohol, sex etc) were wound back because it primarily affected those outside mainstream white culture. Of course that’s no longer the case, which is probably why it’s slowly starting to be wound back now.
There is also less political will behind drug legalisation because there is no power behind it - drug addicts can’t organise, and any kind of drug legalisation that aimed to minimise harm would have to forego a profit motive. So it just lingers on as a problem whereas other social issues that don’t directly antagonise capitalist economics make progress.