Breadcrumbs are more for UX like you say, however they do help search engines crawl your site's pages better as well, especially if they're not in main navigation.
I think the canonical issue is the more important one rather than what links appear in the breadcrumb. I would select which page you would prefer to rank, then put that url in the canonical tag of the other page.
So the canonical would be for Google, and the breadcrumb would be for user.
Also, who knows, maybe having the different breadcrumb is better for the user, because they came from a different path to that product in the first place. But Google would count both pages as the same.