Step 1: Split the data base in 80/20 (you do not use 20 for anything now)
Step 2: The 80 of step 1, you split in 70/30.
Step 3: You use the 70/30 of step 2 to find the most importat features.
Step 4: You do k-fold cv using 80/20 to choose the best model.
I think You are doing great in terms of spliting the database.
You may also consider to choose your features using a procedure like this:
Permutation importance: The permutation feature importance is defined to be the decrease in a model score when a single feature value is randomly shuffled
Shap values: It is not an easy concept since it is based in game theory, but it shows the importance of each feature.