As far as Jedi telling them apart, the canon answer is in the Season 1, Episode 1 of of Clone Wars cartoon ("Ambush"). Predictably, the answer is "The Force" :)
Yoda tells the clones he's with to take off their helmets while resting so he can look at their faces.
They object that there's no point as they all look identical.
Yoda tells them that indeed they are all different inside, and proceeds to Jedi-psychoanalyze each one in turn.
Yoda: Come, sit.
Your helmets, remove them.
Your faces I wish to see.
Clone Trooper: There's not much to look at here sir.
We all share the same face.
Yoda: Deceive you, eyes can.
In the force, very different each one of you are.
Rys, always focuse on the enemy, are you. For inspiration, look to yourself, and those beside you.
Jeck, concerned about weapons you are. Weapons do not win battles. Your mind, powerful it is. Outthink the droids, you can.
Thire, rush not into fights, Long is the war, Only by surviving it, will you prevail.
Clones you may be, but the force resides in all life forms.
I don't recall specific examples of clone troopers telling each other apart during combat, but that also makes perfect sense - they are all trained for individual missions and positions, so you know who the dude on the heavy blaster is from the dude assigned to the flank.