Theoretically they are forgivable. But there is no right to forgiveness. Especially uncontrolled anger can make people really lonely and isolated real fast.
I would recommend getting yourself into therapy. Chances are that if you're anger is of such dimensions that there are other issues in addition. Please do this and ask the therapist to explain to you how you can mend this. One can also go and ask for better ways dealing with the whole situation, it seems as if a big part of the frustration is that you feel helpless in the face of his behavior and problems.
As for the boy, he would probably benefit from therapy,too. But you cannot make him go, you can only work on yourself.
As for calling his bluff etc, this can backfire. People don't always have healthy ways of expressing themselves and being dismissive will only cause more problems in the long run. But you know, it is your girlfriend's job to raise him. What is she doing about him? That's a conversation you should really have, obviously her son is somewhat troubled and not getting the help he needs.I can't believe he woke up like this when he turned 18, considering this blaming makes even less sense. It is simply illusionary to expect someone to be able to handle everything and themselves simply because they are a certain age. If it's lacking in that area then they either have a neurological/medical problem or something went wrong during childhood/adolescence. Think about it and good luck.