Yes, the piston seal needs to be loose as it expands on the forward stroke to seal the piston to the cylinder and expel the air. Have you tried putting a bit of silicon grease on the piston ring? If the seal is dry then it will not seal tightly enough to give full pressure. If you have the gearbox apart, try putting the piston into the cylinder with your finger over the end of the pipe coming out of the cylinder head, with the open end upwards. If the piston (and head) seal is good, then the piston should either drop very slowly, or not at all, even if you press down on it. If the piston drops straight down, or moves very easily under finger pressure then you have an air seal leak, either around the piston seal or the one sealing the head to the cylinder.
If the seal is good then the issue is probably either a weak spring has been put in the gearbox, or you have a sealing issue between the nozzle and the hop rubber, or the hop is turned too far on.