In Great Britain "Jock" does not refer to an athlete, it is an American term. In Great Britain, "Jock" is used to refer to someone from Scotland and it is perfectly normal to use, just as Paddy is someone from Ireland and Taff someone from Wales, people from these countries also accept that these terms as the norm. For example when there is a Rugby or Football (soccer) match it's often used we're playing the Jocks.
Same as people from Great Britain refer to Americans as Yanks.
Hope this helps
I agree that in the USA the word "jock" normally has a negative meaning. It is a stereotype. If you want to describe someone who is athletic and sportsmanlike you can use "athlete." "Jock" typically means someone who has more muscles than brains and is arrogant, and the word often has a bully connotation. When I think of the opposite of "jock," I think of "nerd," but "nerds" are rarely associated with sports (except chess). However, there are some people who like to be called "jocks," because it infers masculinity and toughness, just like some people like being called a "nerd" because it can infer superior intelligence or academic achievement. I would be careful of using either word.