Well to be more accurate, boycotting is the practice of fighting harmful use of money by witholding money. Of course that stands to reason. If your money spent in a certain way is doing harm, you can prevent the harm your money does by not putting it on the harmful path.
I’m not sure what specifically you mean by getting people to reason better (whether you are talking about voting w/money or voting on the ballot in that context). Of course ads work. Political campaigns have started leveraging the same manipulation by ads that works to get people to buy goods and services.
What we certainly know does /not/ work is people thinking they are immune to ads. Everyone thinks that, and marketers prove them wrong over and over again. Advertising is specifically designed to exploit vulnerabilities in the human mind. You have no hope of creating an advertizing-immune population. It would be an ocean-boiling type of endeavor.
I agree that breaking them up would do some good, but in the case at hand you would just have a longer list of companies working together to defeat r2r.
If you could break them into very small pieces (e.g. split Google’s Android line into 6 different companies instead of 2), then you might see some competing for repairability against Fairphone. But still maybe a long shot. I walk into a phone shop and have 10s of different brands and not a single one of them has tried to go after the built-for-long-life market. Fairphone is alone on that AFAICT.
I think the only way out of this is to ban the environmentally detrimental practices of burying batteries in glue and booby trapping toothbrushes to self-destruct when opened. Because there will always be enough zombie consumer masses willing to buy that shit.