Try updating your learning rate. I usually divide learning rate by 10 when two consecutive loss are within 0.01 difference. You can use a learning rate scheduler from here torch optim (ReduceLROnPlateau might be the one) or you can make a simple scheduler yourself.
# Outside the epoch loop
previous_loss = 0
l_rate = learning_rate #l_rate is here to keep track of new learning rate

# Inside the epoch loop at the end 
if abs((previous_loss - loss.item()) <= 0.01:
    l_rate /= 10
    optimizer = torch.optim.SGD(model.parameters(),lr=l_rate,momentum=0.9)
previous_loss = loss.item()