I think I got it.
First statement Albert makes implies the month he was given has ambiguous days: the month he was given contains only days that were all featured in other months. From this we know it is either July or August:
July 14 - '14' is also featured in August 14
July 16 - '16' is also featured in May 16
August 14 - '14' is also featured in July 14
August 15 - '15' is also featured in May 15
August 17 - '17 is also featured in June 17
Now that Bernard knows that it is either July or August, he can look at his 16 and see: his '16' is only contained in one of those two months, therefore he knows it must be July 16.
Bernard could not have had '15' because 15 is shared with May 15 and May has a unique day (19) which would make Albert's first statement impossible.
Bernard could not have had '17' because 17 is shared with May 17 and May has a unique day (18) which would make Albert's first statement impossible.