At 7 years old that is too young for a speargun. Kids don't understand the consequences of their actions, they think only of the immediate "now" rather than a chain of events in terms "if I do this then what will happen next"? Build him a toy gun that looks the part, not the real thing. If he had an accident then the responsible adult takes the fall, it is not worth the risk for either him or yourself!
+1