Halladay earns first win in a month