Random forests is an ensemble of trees that learns the hidden patterns in the data. I have mostly tried doing some feature-engineering before running the Random Forest model but is it required or the model takes care of this?
Absolutely it is. Regardless of the machine learning algorithm you are using, the quality of your features is paramount. In many instances, feature engineering (say, using domain knowledge to restructure/recode variables) creates information that was simply not there previously. To the extent that this effort introduces useful class separation, your model will very likely perform better. Random forests, or any other algorithm that I am aware of, cannot create this information without your intervention.
I would say yes.RandomForest uses the given features not create new features of its own from the given set of features like Neural Network. If you add relevant features or drop insignificant features it will improve the model performance.
Absolutely yes, but the damage caused by splitting on noise features will vary depending on other RF parameters (nodesize, num. of variables selected per split, etc).
If your good features dominate, the damage will be small, but removing useless variables will always improve performance (both accuracy and processing time).