If garp can fight equally with a top tier swordsman roger with bare fist, why cant luffy fight with shanks?
When we consider someone's power level, we should consider all the aspects.
A significant contribution that takes him to overall yonko level is the immense blunt force damage resistance that Luffy gets from his DF. The blunt force resistance which hightens much further in his G5.
To put things in perspective, G5 Luffy took more damage from a flying slash from Kaido, than he took from advanced conqueror's blunt attacks.
There was a great post from @ZenZu which went over the entire thing, I will quote it once I find it
Point being, a component of Luffy's overall power level is nerfed here.
When it comes to Garp, is a the character with the greatest haki hype IMO. Things are a bit different here.
Now, of course Luffy can fight Shanks, protect himself with the "gap" function from advanced conqueror's/armament.
This could be how Roger vs Garp might have gone through. Nobody said they had long fights, just that they fought each other in close fights many times.
But the difference comes when you get hit clean, as @nik87 also said.
Thestaple of Luffy's fights involved him getting hit clean multiple times, in fights that span over several chapters.
You simply don't get hit clean by a swordsman of Shanks' caliber a 100 times, like how Kaido landed countless clean hits on Luffy. That would be a very strange fight, first of it's kind in OP for sure.
Kaido, the most durable character in the series so far, could at max handle like 5 of the attacks that Oden landed on him before going down. Lethality and attack power of top tier swordsmen are a thing.