Why not both? You can stop personally contributing to the problem while you also advocate for system-level changes. Also, there's likely personal benefit (e.g., improved health, decreased cost) that comes with making these changes.
Don't worry about lasting change, worry about what your contribution to the problem is. I think the veg*n community is a good example where a proportionately small group of people stuck to personal commitments to not eat meat or animal products, and have (decades later) gotten mainstream acceptance for that. You can now have a vegan meal at Burger King, but only because a group of people weren't worried about making lasting change they were just worried about living in line with their values :)