Both goals came in the first half with Swansea taking a 36th-minute lead before Reading hit back just seconds before the whistle for the interval.
The draw leaves Reading with just one home league win this season and was the first time in six meetings they have failed to beat the Welshmen.
Swansea's opener came nine minutes before the break when Angel Rangel's pass split Reading's defence. Darren Pratley raced in from the left to place the ball just inside Adam Federici's right-hand post. It was Pratley's third goal in a week after scoring twice at Sheffield Wednesday.
Reading's equaliser came as the result of a foul by Nathan Dyer on Reading midfielder Gylfi Sigurdsson. The young Icelander took the kick himself from just outside the penalty area and curled the ball beyond Dorus de Vries and into the far corner of the Swansea net.
It was a frustrating outcome for Swansea and their 3,000 travelling supporters. The Welshmen had looked the better side in the first 45 minutes and probably felt they deserved to be ahead.
McDermott made a tactical change at the break, moving Sigurdsson into central midfield from the left and, soon afterwards, took Shane Long off, replacing the striker with tricky winger Jimmy Kebe.
The move sparked Reading and it was Kebe who set up a good chance for Sigurdsson 17 minutes from time, but his effort was comfortably saved by de Vries.
Both sides seemed to having problems with their footing on a pitch that looked in good condition but appeared to be hardening up as the cold closed in.
Swansea did get the ball in the net a minute from normal time, but the referee had already blown for offside.
There were first-half bookings for Swansea's Pratley, for delaying a free-kick, and Dyer for the foul that led to Sigurdsson's goal. Reading's Bynjar Gunnarsson's was booked for a foul in the second half.