I don't blame Gerard for being an asshole and being angry here. He's got strong feelings for Willow and has slowly let her into his heart and he just put his trust into her - now he overhears her talking to Bob. His emotions take over and for one he may think that Willow really is just using him. Then he may also think that she sought out talking to Bob because she wanted to go alone. In his state and now under the influence of that location he's bound to be overly emotional and jump to conclusions.
And Willow is just as bad as he is with trying to ignore what's really going on between them. They're very dishonest with eachother when it comes to their feelings.