Garcia sharp in Cardinal's 9-3 win over Red Sox