The 49ers are 7-1 because of their defense and running game. Smith is hardly lighting it up, but he's doing enough in the passing game and is protecting the football. That being said though, the 49ers are ranked 21st in pass defense, so a good passing team can probably exploit their secondary.
No doubt the defense arguably had it's worst game of the season probably outside of Week 1. The front 7 is not getting home as consistently as they were a year ago and is exposing our secondary more often. Miscommunication between Peprah and Williams certainly didn't help in the 4th quarter either.
You definitely want HFA though. I think the offense has shown it can move the ball in not ideal conditions including tonight in a rainy mess. The defense isn't nearly as good as it was a year ago, but the offense is markedly improved over a year ago. The turnovers the defense has produced along with the offense putting up some gaudy numbers are why we're 8-0 so far.
Personally, after this game I wouldn't mind seeing So'oto getting a few snaps opposite Matthews. Zombo just can't stay healthy and the defense needs some sort of spark in pass rush. Walden is solid but nothing spectacular and Matthews can't do it all by himself. Hopefully getting Neal back in the next few weeks might help but it's easy to say the secondary needs to get on the same page more and the front seven needs to start generating better pressure. You fix those two things, and the defense probably improves quite a bit.