I'm going to have to throw in another vote for Angel. As mentioned already, their fight in 'In The Dark' was totally one-sided in favour of Angel, and when Spike did manage to beat Angel, it was at a time when he was insecure and unsure of his role in the Shanshu prophecy. Spike was on top form then, and Angel...really wasn't.
Not to take anything away from Spike - he's a vicious fighter. Back in the early seasons of Buffy I'd definitely have given him the victory over Angel (Angelus...maybe, maybe not). But Angel's come a long way since then; on his own series he's been shown as a very dangerous fighter and taken on all sorts of opposition. Spike on the other hand kind of went in the opposite direction - after he got the chip, the writers frequently seemed to forget that even though he couldn't hurt people, he was still supposed to be tough and a skilled fighter (cf. getting beaten senseless and left on the ground by a random demon at Willy's in 'Goodbye Iowa', or getting beaten up and his nose bloodied by Xander in 'Hush'). They did try to reverse this a bit in AtS 5, but after 'Destiny', Angel still seemed to be the stronger of the two (he seemed to handle Spike pretty easily in 'Power Play', and beat him up as a freaking puppet in 'Smile Time'). So...yeah. Angel takes it.