Ideally, public figures who changed their minds about something would state that they had done so and explain what information changed their opinion. This would let observers gauge whether the person had really changed their mind or was just saying whatever was most expedient. The problem with this is that it takes a long time, and would ideally involve questioning by others ("You used to say X was good because of Y - do you still believe Y?"). If you're making speeches where your goal is to say lots of things that make you look good in the amount of time people will listen, you don't want to spend time on this sort of thing because most of the audience will tune out before they've heard you say much that sounded impressive.
Sure. As you say though, that would be a difficult sell.
I think part of the problem is that "they're changing their opinions too much" is usually a snap judgment. It tends to be applied to everyone that doesn't have a firmly fixed campaign platform (and isn't protected by party affiliation).
People who actually sit down and look over the available history tend to, just as a trend, come back with more concrete issues. More along the lines of "this guy's had a different opinion on foreign policy to go with every speech he's ever made, and it always lines up with the majority opinion of the audience."
When you hear powerful evidence or arguments that should get you to revise your beliefs, not only do all sorts of cognitive biases fight the changes but so do the social factors of status and face saving. Perhaps I've long been a vocal proponent of X which implies Y, and you show me that Y isn't always true. It's very hard to just straight up admit "ok, I'm not a hardcore Xist anymore." There's a status loss in letting yourself be convinced.
For a long time I thought that I was stronger than this, that saving face only mattered as much as I let it matter. I wish I could freely admit when I've been convinced, but I often can't manage to. [1] Instead I'll finish a conversation defending my earlier beliefs and only later start acting on my new ones.
After a discussion where someone didn't admit to any change of mind, I'll often see them later having changed their behavior. So now if I'm trying to persuade someone I don't focus on securing verbal agreement. Instead I just try to be as convincing as possible, and notice if they come around later. [2]
(I also posted this on my blog)
[1] This is not a helpful trait: I'd like other people to let me know when I'm wrong or when they have evidence I'm not considering, but if they never get the satisfaction of knowing they've convinced me they may just feel like they've wasted their time, and not try in the future. So I'm working on it.
[2] Keeping people from feeling personally invested in one side or the other of an argument is probably also helpful: I understand discussions are much more likely to convince bystanders than participants.