Random Forest workflow?
370 rows is quite a few, RF does bootstrap but it is still few info. 
Having too many columns will lead to a more complex model (since the algorithm will work 1 000 dimensions). 

Consider doing a pipeline with all the steps and search for hyperparameters and feature selection there. https://scikit-learn.org/stable/modules/generated/sklearn.pipeline.Pipeline.html

You can check a simple tutorial here

In summary, try to build a pipeline with all the steps but maybe the problem is in your data 370 rows is a small sample.