My grandfather's birth certificate (from 1864) also shows one day different from the birth record in the Quaker records where the family information was maintained. My mother always said my grandfather celebrated his birthday on the day shown in the Quaker records. Granddad was born at home and the doctor would stop by later and then send in the information to the state (in my case New Jersey) and the BC could well be incorrect and merely based upon the doctor's recollection--and he may well not have even BEEN there for the birth. My guess would be that my granddad was born sometime around midnight and this could be the case in your situation also. I'd go with the date he actually celebrated his birth and put a note explaining that the BC was one day off.
For what it is worth...Social Security (if your great-grandfather was ever in that system) establishes ages based on "attainment" of an age and under that system a person is deemed to have attained an age ONE DAY prior their actual date of birth...in the case of your great-grandfather this actually mean he would have been entitled to benefits one month earlier than the date of his birth based upon the BC...and he attained age in the year prior to the Jan. 1st birth date on the BC.