Here are two different kind of 的 that you were talking about. One is for certainty, the other one is to provide some kinds of details for a known action.
1. “了” vs "是...的"
了signifies completion of an action, while 是...的 is to bring out certain details about a known action, such as time or places. Often time the 是 is omitted in rapid speech, so you might only see a 的 hanging there in the end of the sentence.
Compare these two sentences:
他昨天看了。
他(是)昨天看的。
Both sentences can be translated to "He watched (it) yesterday." However, in the second sentence, the focus is on 昨天. The speaker assumed that the listener already know that the action of watching happened (maybe they have been talking about it before), so the speaker only focused on the time when it happened.
Let's break down the sample sentences you provided:
他来了。 (O)
他来的。(X) the 是...的 pattern is about bringing out the details of an action, but in this sentence, no such details are provided. You can say 他(是)昨天来的 or 他(是)和我一起来的.
他现在才来的。(O)
他现在才来了。(X) this sentence is incorrect for very specific reason. When you use 才 before a verb, 了 will not follow. The reason is that 才 is used to stress about how late the action happens, adding a 了 to emphasis the completion of the action would be very strange.
2. 的 to signify certainty
You mentioned that 的 is to indicate the speaker's modality of certainty. This is certainly true in a lot of cases. Here are some examples of it:
我会去的!(I will go for sure!)
他不会知道的。(He will never know, trust me.)
This kind of 的 make the speaker sound more certain. It is often used with 会 (will, be likely to,) but can also be used else where.