Thank you for your comments. I have edited the original post to make it more accessible.
To make sure we are on the same page, when you're talking about scoring function are you referring to these?
If so, in RFECV I have set scoring to "f1_macro". For RFE I first run it, then create a subset of the top 20 features, then I train a random forest model with said subset, CV set to the same as in RFECV, and scoring set to "f1_macro". I checked and all the other parameters are the same, hence I am confused.