Timely lower bounded Turing machines
Use the following recursive procedure to construct $M'$ from $M$:


Run $M'$ on all non-trivial prefixes and suffixes of the input (if any), and ignore the results.
Run $M$ on the entire input, and output the result.


If $M$ always terminates, so does $M'$. The first step guarantees your first condition. The second condition is virtually automatic.