Jupyter notebook running very slow
In this case you are running a RandomizedSearchCV which is running 100 iterations.
If you consider the fact that for every run of your 30K rows worth of data with youe 300 features (which is a fair amount), you would be looking at an average run time of ~ 1.2 minutes per run.

You could however speed this if you were running thia via GPUs instead of CPUs as you could do more rapid calculations.

So to answer your question the issue is not with your machine or your Jupyter Notebook.
Rather it is with how many iterations you have had with your RF Randomized Search Algorithm. If you reduce the iterations, you will also see a reduction in the run time.