The best QB Shanahan has had with SF to this point, I guess is Brock Purdy.
Just look at the what they did at QB since Shanahan has been there.
2017: Traded for Jimmy G. Had the #3 overall pick in the draft but passed on Patrick Mahomes.
2021: Traded up and drafted Trey Lance who was a bust and later traded to Dallas.
Tried to get Kirk Cousins but failed.
Tried to get Matthew Stafford but failed.
Tried to get Tom Brady but failed.
For all the trades and draft picks they have hit, they have failed to get a franchise QB. And that IMO is what has been holding them back. At this point, they are lucky to have Purdy.