Nasty situation, and one that is probably going to take some time to get better. But it will get better; you're just going to have to ride it out until it does.
What's happened has happened, and judging isn't going to sort things out for the future, it will only create a hangover of bitterness about the past. The most important thing you have to do, is wait for your husband to forgive you. He may say he does already, which is great if he does, but it will take time before he is capable of really meaning that. Until he reaches that stage, all you can do is wait for him and keep demonstrating that you really are sorry. Are you going to counselling? In some relationships it can be the partner who didn't cheat that ends up destroying the marriage through their behaviour towards the other because they simply cannot get past the affair. Hopefully your husband isn't one of these, but if he is, get to Relate. It may also help with your own guilt, which could also destroy the marriage unless you learn to forgive yourself.
In this case, actions speak louder than words. Showing remorse, apologising to everyone, then moving on and continuing your life with quiet dignity and integrity will speak volumes. You never know, you could become one of these couples that his family speak about in future years saying things like, "Well ever since jannasmama had that affair, they really worked on their relationship and they're now stronger than ever. In some ways it was the best thing that could have ever happened."
No one, including your husband, is entitled to beat you around the head for the rest of your life because of this affair. Yes it was wrong and it has hurt people, but you made a mistake. A large one, admittedly, but few people can go through life saying they haven't messed up at some point. A bad mistake can never be undone but it can be mitigated a LOT by genuine remorse and a sincere effort to make things better. You're going to get flak off your husband's family to begin with, and it would be wiser to take it and keep apologising for now, but there will come a point when enough is enough. When you reach that point, you are entitled to tell them to keep their opinions to themselves (as diplomatically as possible, if you don't want to alienate them forever). Ultimately, it's your husband's opinion that matters most. If he's forgiven you the family will hopefully get back to treating you normally for his sake.
I have to say that my take on your husband's best friend is the same as CountessDracula. I am highly suspicious. But whether he is genuinely devastated at what he's done, or manipulating everyone to avoid the flak, is immaterial. All you can do is control your own actions and worry about your own marriage. If he's pulling a fast one, he'll expose himself at some point.
Do you know why you had the affair? In my experience, people who have affairs tend to fall into two categories: Those who want their cake and to be able to eat it, and those whose marriage is missing something and they unwisely seek it elsewhere. You sound like the latter rather than a coldhearted serial adulteress. Have you thought about this? If you're really going to get past this affair, I think it's something you need to discuss with your husband, though I wouldn't do it immediately as he might take it as you trying to shift blame. Again, Relate may help with this.
You're human, you messed up, you're genuinely sorry and you're obviously trying hard to fix things. I hope it works out for you.