I’m not familiar with ONNX and don’t know why the PRESERVE mode is not working.
However, if for some reason the dropout layers are disabled during the export (have you verified it by e.g. just exporting a single dropout layer?), you could most likely use a custom module and hardcode the training argument:
class MyDropout(nn.Module):
    def __init__(self, p):
        self.p = p

    def forward(self, x):
        x = F.dropout(x, p=p, training=True)
        return x

and replace all layers with this custom implementation.