Use nn.BCEWithLogitsLoss as the criterion instead of nn.BCELoss and pass the raw logits to it by removing the sigmoid.
Normalization might help your training so you should definitely try it out.
Also you could try to overfit a small data sample and make sure your current training routine works fine.
Once this works you could try to scale it up again.