The Buccaneers started positively and opened the scoring in the third minute after Ndoro headed home a deep right-wing cross from Rooi Mahamutsa, 1-0.
Cosmos tried to find their way back into the match and came close to levelling matters in the 18th minute when Maluleka broke into the box, but he saw his 14-yard effort superbly saved by the keeper.
Five minutes later Cosmos did find the equaliser when Charlton Mashumba fired the ball into the top right corner from 25-yards out, 1-1.
Pirates controlled the remainder of the half and re-took the lead in the dying seconds of the stanza when Luvuyo Memela headed home a right-sided free-kick from Mpho Makola, 2-1.
Ndoro found his second of the goal game in three minutes into the half as he superbly turned home a left-wing cross from Thabo Rakhale from ten-yards out, 3-1.
Elsewhere Baroka FC beat Golden Arrows fc 2-0