For an automated solution the TeX engine offers the mark mechanism (and this in fact the only way to get this right). This means that you have to put marks in your document and in the output routine when the page is being build you have to evaluate those marks and act depending on the result. TeX offers three types of marks: \topmark (the value of the last mark from the previous page) \firstmark (the first mark on the current page) and \botmark the last mark on the current page. With those three a solution is possible.
Unfortunately, LaTeX only makes use of \firstmark and \botmark in its running header support. This means that one has to augment the LaTeX commands to also support \topmark.
The basic idea is this: If I want to know the truth about the top of the page I need a sequence like this representing my section code:
\mark{<section-title>} % this is not set by standard LaTeX headings
\penalty <break before section>
\skip <skip before section if no break is taken>
<section-title>
\mark{<section-title>}
Now if a page break happens at the \penalty then the \topmark will contain the section title (because of the first \mark that was executed as the last mark on the previous page) and the \firstmark will also contain the section title because of the second \mark command after the title. So when they are identical you know that your section is at the top of the page.
However if the heading is not at the top of the page but some way down the page then both \mark commands will be on the same page and thus \topmark will have the value from the section of the previous page, i.e., will differ from \firstmark and thus you know you need to produce a "continuation" line.
That's roughly the outline of the algorithm that needs to get implemented. There is some support for this in the package extramarks, however the whole topmark mechanism doesn't quite work with LaTeX's float/marginpar mechanism (which is why LaTeX doesn't use \topmark in the first place). Any float will clobber the \topmark so the above only works for simple documents (e.g., indexes and the like -- The LaTeX Companion index for example uses this approach to repeat top-level index entries if they run across columns or pages).
If it is needed for more complex documents then you need to extend the LaTeX output routine to keep track of the topmark values and properly restore them when doing float management (not at all trivial).
So sorry, nothing directly available as a package afaik. The stuff from TLC2 is a bit too specific to be of any use.
Update
Looks like there is a package to support this after all: titleps by Javier Bezos which emulates (but doesn't use) \topmark. So this is well worth a look. The basic approach outlined above would remain the same.