Red Sox rally with six runs in ninth to beat Mariners; Nava delivers winner