I cannot reproduce the issue with e.g. AlexNet:
grads = 0
def grad_hook(module, grad_input, grad_output):
    global grads
    grads = grad_output[0].clone().detach()
    

model = models.alexnet()
model.features.register_backward_hook(grad_hook)

x = torch.randn(1, 3, 224, 224)
out = model(x)
out.mean().backward()
print(grads.abs().sum())
> tensor(0.3220)

model = models.alexnet()
model.features.register_full_backward_hook(grad_hook)
grads = 0
out = model(x)
out.mean().backward()
print(grads.abs().sum())
> tensor(0.3470)

Could you post the model definition, so that we could try to reproduce it?