The research is pretty clear on this that personal boycotts have zero impact on businesses. Boycotts that have worked in the past have worked not because they made a material dent in profits but because they were public relations disasters and brought social and ultimately legal attention to the behavior that was being resisted. Which means that, materially, even if sales didn't change at all a loud PR disaster would be more effective than a person choosing not to buy something and telling their friends.
Your econ 101 assessment is about macro trends and it always breaks down when you try to apply it in the micro. That's why we study theory. You won't find anything in Das Kapital, or the writings of any theorist or practical revolutionary that says "you are a bad person if you consume something that was made by exploitation and the way to salvation is by not consuming those things".
Moralizing is how we break solidarity.