Looking up the Reading to London journey on the BR Fares website (not an official website, but contains details of ticketing restrictions in the national fares database), and querying that fare, you find under the Unpublished Restrictions section of the Off Peak Return ticket (5B):
Restriction Code: 5B
This restriction code applies on the following dates/days:
From Until Applies on these days:
Sun 3 Sep 2017 Sun 3 Sep 2017 Tu We Th Fr
Mon 4 Sep 2017 Sun 17 Dec 2017 Mo Tu We Th Fr <<<--- Should be 23rd Dec
Tues 8 May 2018 Mon 28 May 2018 Mo Tu We Th Fr
Tues 29 May 2018 Mon 4 Jun 2018 Tu We Th Fr
Tues 5 Jun 2018 Mon 27 Aug 2018 Mo Tu We Th Fr
Which to me suggests they have not correctly programmed the Christmas lifting of restrictions into the fares database - the 5B code doesn't apply after the 17th December here. If you query that fare on the National Rail website for, say, the 15th December, it only offers you the Anytime Return as being valid, as expected.
Seems like a programming error in the database. Technically it should be accepted if you have been sold that ticket via the website and can produce the valid itinerary, but it might be difficult to argue this with the conductor on the day.