True--there are certainly situations where the use of such punctuation is nuanced. Assuming you know the grammatical rules associated with them, then it all comes down to style, tone and pace. When in doubt, I always pull out my trusty Strunk and White.
The colon has more effect than the comma, less power to separate than the semicolon, and more formality than the dash. ...Join two independent clauses if the second interprets or amplifies the first.
...it suggests the close relationship between the two statements in a way that [using a period] does not attempt, and better than [using a comma and conjunction] because it is briefer and therefore more forcible.
A dash is a mark of separation stronger than a comma, less formal than a colon, and more relaxed than parentheses. ...Use a dash only when a more common mark of punctuation seems inadequate.
(Above quotes from The Elements of Style)
So, that said, the choice of punctuation rests heavily on the importance of the information that precedes it. Combine this with the narrative flow of the surrounding sentences and the tone you're trying to achieve, and you have a nice selection of options from which to choose.
Per your example sentences:
"There is no doubt; the man in the pictures is my Jack."
Although both clauses are complete sentences, the first clause benefits from the second clause to interpret or amplify why there is no doubt. So here I would use a colon.
"Her insinuation is right; I am here under ambiguous circumstances."
The semicolon seems fine here, depending on context. The second clause is closely related to the first, but if the fact that her understanding that you're here under ambiguous circumstances is a huge revelation then the colon would also be appropriate. A period is technically correct but it halts the flow of the two sentences, which could be useful for dramatic effect if put into their own paragraph but runs the risk of annoying the reader if not necessarily important.
"I’ve seen it with my own eyes: otherwise fully-functioning women who choose to ignore the truth so that their lives don’t implode."
The second clause cannot stand alone as its own sentence, so a semicolon is out of the question. The colon is appropriate here, and works well because the second clause interprets the "it" in the first clause.
"I look around me; the road is quiet apart from occasional cars that thunder past in either direction."
The semicolon is technically correct, but I think a dash would serve the sentence well. It is more immediate than the semicolon and helps the reader put themselves in the narrator's shoes as they "look around." The semicolon adds an extra pause that makes the description seem less connected to the action. This is matter of style, but I vote for the dash.
"The things that John has just told me stab at my consciousness: Sarah's affairs, David's lies, the investigation."
Colon is a must. The list can't stand alone, so no semicolon. For dramatic effect, you could end the first clause with a period and also use periods instead of commas for each item in the list, should the situation call for it. This would make the items appear more like stream-of-consciousness thoughts channeled straight from the character. Tone allows you to break a few rules, but it always, always depends on context.
"I study every inch of his face as if seeing him for the first time: his sharp cheekbones, wide-set eyes and the scar on his jaw."
Same rules for the previous sentence apply here. If this is a dramatic moment, such as a character realizing s/he has feelings for the other, you could definitely use a dash instead of the colon, as you suggested. You could also do something like this: "I study every inch of his face as if seeing him for the first time. His sharp cheekbones. His wide-set eyes. The scar on his jaw." The periods add a pause to each feature in such a way that mimics the act of actually studying a person's face. Taking in specific details of a face would suggest that you take a good, long look at these features. Using a comma makes it seem like the character is glossing over them in a way that seems less genuine. But again, this always depends on context. Periods would slow the pace way down and may not be what you need here, and the dash would be just fine. Without the dash or periods, though, the sentence could a little too ordinary for the situation.
"My eyes dart to the alarm clock next to our bed: 6.12 p.m."
A colon is appropriate, but I agree with you that a full stop with a period after the first clause would be better, especially if the time holds some significance other than just being a background detail.
As mentioned before, context is king when determining what to use, but also consider pace of the story and the tone you're trying to convey. Use your instincts to decide which punctuation serves your story best. Hope this helps.