Does this mean that he does poorly in his studies, or that he is a student who happens to be weak?
It can mean both. But if you want to say that he is weak, you would rather not add the word "uczeń".
So the adjective słaby here uses the instrumental case because of the noun uczeń, but if i was to say "he is weak" it would be on jest słaby/e/a (masculine/neuter/feminine)
Is this right?
Yeah, it does use Instrumental because you have the whole noun phrase 'weak pupil', and it would just use Nominative if it was only an adjective. But as the subject is "he", the right form can only be "słaby".