My two have played cricket since they were 5. They have covered all variations of your post over the years. Don't get to bat, don't get to bowl, not in their preferred fielding spot, stomping off in disgust when they didn't agree with the umpire, tearful and embarrassed if they were out for a duck - yes even at 16! On the plus side they've also been amazing, top scorers, top wicket takers, fielding slip (best spot apparantly), happy and delighted when they've done well.
They are now in their 20s. Yesterday my youngest played for the first team, was out on the boundary for fielding, 7th in batting order so didn't get to bat, and isn't a bowler so didn't get to bowl. They won, he was happy, but he said it was, for him, a pretty boring 50 over match.
My oldest played yesterday for the second team. He bowled 5 overs, took 3 wickets, 6th in batting order but got to bat as the others were out fairly quickly, highest scorer of the match, fielded slip. They lost so he wasn't happy but, for him, it was a good game because he was fully involved.
Next week could be entirely different for them both. The week after will be different again. They've both played for the 3rd and 4th teams in the past. That's the game. It is is frustrating but they play because they love cricket. And, whilst the personal achievements are what they crave, it's a team game and everyone on the pitch needs to be there to make it happen even when it's long and boring. We have tons of trophies from best batsman, best bowler, best newcomer, and the 'consolation' ones of players choice or coaches choice.
Unless you are exceptional at batting and/or bowling that will always be the nature of the game. DS1 had a period from 14-17 where he was opening batsman and top bowler, he couldn't put a foot wrong. Now he's still good but less immersed in it.
Teams play to win. A 40/50 over match can be 6hrs + long. Your son needs to decide why he's playing and if it's the sport for him. Hours on the boundary with little to do except watch others being in on the action isn't for everyone.