Let him do something that he wants to do.
Even if that is nothing, and just being a kid.
He is so young. He is so young. He will not grasp, like a Teenager or like an adult, the ramifications of "giving up" or sticking with it, or that money is being paid for it.
"Respect" is still being developed too. It is not a thing that is instantly grasped.
Kids this age, do NOT have fully developed deductive or inductive reasoning.
The "expectations" you may have of him, is better for a much older... child.
I know a kid, that takes Karate with my 9 year old daughter. This girl is about 7 now. And quite frankly, she does not like it. She's been taking it for 2 years since she was 5 years old. And honestly, she stinks at it and though she tries (for her parents), one can clearly see... that she is not into it. At all. She is just doing it for her parents sake. And they will not let her quit. Meanwhile, because she is not adept at it, she does not get higher ranking belt colors nor does she pass, the competency tests. Ultimately, she does not like this activity or lessons. But her parents get frustrated, because she does not like it and she is not good at it. They keep telling her "listen! Pay attention! Try harder..." to her from the sidelines. It is real sad, to see this play out. Many of the other parents just KNOW, this girl is not into it at all. But has to do it. Because her parents think they are teaching her a lesson about not giving up. Well her heart is just not into it. Even the Karate instructors tell the parents that.
The girl is doing it only for her parents. Not for herself at all. And ultimately, a child should do what their heart, is in.
THAT... is how they learn... about respect/perseverance/dedication and all the mature stuff. In time.
Their HEART needs to be in it.
And it should be fun for them.