Personally I was the only one from my primary to go to a grammer school and I hated it. Some kids I was at primary school went to really poor comps and ended up doing well! I think that peer group can be key in motivating secondary age kids, so if you think his friends will be a good influence why not let them stay together?
I personally believe , that he does not want to move because fo his friends.
he has great potential but needs to be challenged to achieve his best.
The new school specialises in his desired subjects, but he insists he likes it at his current school.
I am torn between helping him make the decision and giving in to his wants, but what if he starts to underachieve in years to come , because he is not being pushed to do his personal best; how do you make a 12yr old understand that he might have better opportunities (broadly) than in a comp. school?.