He should try lots of different events and see where he feels most comfortable and play multiple sports that he enjoys. There is no need to specialize in middle school. If he is consistently getting toasted in the sprints, he should probably move up. A lot can change between middle school and high school, so give him time and let him discover what he wants / enjoys. I didn't start running until high school and I didn't start running middle distance until junior year of high school. I made it to state in the 200, 400, 800 and 1600, won state medals at 400, 800 and 1600 and won state in the 800 and then ran 4 years at the Division 1 level. My kids ran some JO meets this past summer and it shocked me how hard some of these 10 year old kids were training. Many of them had been running cross country, indoor and outdoor track for three years or more training upwards of 30 miles per week and my kids were still able to run with and beat a number of them in their first season of outdoor track off of 10 miles per week (my kids also play soccer, swim, mountain bike, hike and paddle). If you are doing one specific sport too often at a young age it increases your likelihood of overuse injuries and burnout.
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3658407/