Jered Weaver goes six strong in Angels' 3-1 win