In my scenario, I am also running IForest from sklearn on a couple of million rows without any troubles.
However I am running 1000 n_estimators with a max_samples of 10.000 so nothing huge in these regards, but I did not notice any accuracy improvements by increasing these numbers other than just a performance hit.
I had the same question you do, whether another algorithm is beneficial, but when I tried running a OneClassSVM on my dataset it took forever to train.
So I would just stick with isolation forests as I at least have experienced they perform quite well on large datasets.