You can’t make someone change. They have to decide that they want to change, and they have to go through the steps required to make a change – and they have to do that by themselves. It’s true that you may be able to encourage someone to change, but that’s only if they agree with what you say and if they want to.
It’s the same way with fiction: a character cannot change totally out of the blue or if another character says he should. There has to be a great deal of motivation leading a character to make a change and become different. Character change is the hallmark of fiction: the main conflict of the story has to change a character from being a certain way at the beginning to acting a different way at the end.
For instance, if you have a drunken businessman who continually cheats on his wife, he’s going to have to change by the end of the story to make the ending feel worthwhile to the reader. And he has to make that change himself. Perhaps he realizes that his business is suffering because he spends his nights after work partying. Maybe he sees that his marriage is crumbling and wants to save it for the sake of the kids, so he reconciles with his wife. Sure, he can have people he trusts (friends, co-workers) tell him he needs to change for his job and family, but he cannot just say, “Oh, sure. I believe you. I’m going to change tomorrow.” The story’s conflict has to change him.
I know that’s kind of a cliche example, but it’s important for all fiction. Readers want a character they can sympathize with; a character who has motivation to become a better person.
It’s like in real life. We’re going to be disinclined to change unless we have a genuine reason to get better. Friends telling us is often not enough. We tend to wait until our bad habits and actions cause a devastating problem, then that’s when we make the change. Sometimes it’s too late, though.