Yesterday, my son said he wanted me to buy him an English book so he could study. I was surprised at that because he is often lazy when it comes to learning almost anything. I know that he cannot change himself overnight, but it was a good sign in him of a better mindset.
Perfect.
No comma needed after "book"
Comma needed after "away"
I don't like your use of "having". "Having" is used when you bring something into existence. For example, "she is having a baby" means that she is giving birth to a child. So, your son is not "having" a better mind set. Rather, he is developing a better mind set.