A disappointing second-half performance from Ulster allowed Neath to move to the top of Group C.
Ulster had the better of the first-half exchanges at Shaw's Bridge and took a 17-3 interval advantage.
Paddy Jackson kicked a penalty and then converted a Jamie Smith try before the visitors came back with a Dai Langdon penalty.
Ulster stretched their lead after 35 minutes when Smith linked with Luke Marshall who sent in Tommy Seymour.
The Welsh half-time team-talk worked wonders -- they were a completely different team thereafter and were quick to take advantage of the home team's mistakes.
An Ulster defensive error allowed Ross Davies to touch down, Langdon adding the conversion to make it 20-20. Neath were in charge at this stage and added a third try, from Kevin James.
Ulster were on the Neath line for the final five minutes, winning a number of penalties, but failed to break through the stout defence.
Ulster -- J Smith; T Seymour, J Shiells, L Marshall, G Gilroy; P Jackson, I Porter; C Carey, A Kyriacou, J Cronin; N McComb, R Caldwell; A Birch, McGuigan, T J Anderson (capt). Reps: N Alcott, K McCall, I Henderson, P Pritchard, M Heaney, N O'Connor, M McCrea.
Neath -- G King; K James, S Thomas, A Bramwell, C Morgan; D Langdon, T James; N Downs, G Price, R Davies, E Evans, M Collins, G Gravell (capt), L Evans, E Uzoigwe. Reps: A V Lott, A Littlehales, A Power, A Whitney, A Jenkins, L Ford, J Thomas.