This may be an unpopular opinion, but the reason cain could Handle the mark for so long, I think is because he's less violent than Dean over all.
Dean pretty much lost the battle immediately, Cain had his love at the least and stopped fighting for her, Dean was going to kill castiel and Sam, BOTH are his brothers. Deans words not mine, and the dude wasn't even gonna hesitate, if cas didn't stop him, Sam would be dead. 100% dean has always been kinda violent ever since like season 6, he started drinking, becoming less merciful I think season 4 dean may not of killed Sam's friend(blanking on her name) just kept an eye on her. Bassically Dean was already kinda broken, and the mark amplified that. He probably felt he had no humanity to fight for, but Cain atleast had the memory of his wife. And for YEARS that was enough till he was forced to draw blood again.