'Liable' means (in one sense), 'open to', 'capable of', with no necessary connotation of the likelihood or probability of the event. So, "Such a figure is open to/capable of being [= liable to be] attacked ....".
'Likely', on the other hand, so far as I can imagine right now, always suggests a connotation of probability (likelihood). So, "What he told me is probably [= likely to be] true."
In your third example, the context makes it clear that the 'likely' sense of liable is being used, rather than the 'capable of' sense: any book (much as I hate to admit it) is 'capable of' becoming a best seller, so a reader of the sentence understands the sense of 'liable' used is not merely 'open to/capable of' (that being understood) but 'likely to'.
liable
adj.
....
- probable, likely, or capable
(from The Free Dictionary, italics mine)
Then, 'capable' (adj.):
- Having capacity or ability ....
(op. cit.)
Observe that stating the capacity exists is materially different than stating the capacity will be realized.
See also the usage note concerning 'liable':
Usage: The use of liable to to mean likely to was formerly considered incorrect, but is now acceptable.
(op. cit.)
Edit
Your edit of the question puts a slightly different complexion on the third example. The list of reasons in the example make it more than abundantly clear that 'likely to' is the sense used. For this reason, the preferable choice of terms is 'likely', rather than 'capable', because 'likely' is the more precise term for communicating that meaning.