Как получить номер строки блока, в которой находится слово?
возможно, обернуть слово в span через str.replace(/блоке/, '<span>$&</span>') и посмотреть его element.offsetParent. а там поделить его на свойство line-height, допустим
Ну, я попытался реализовать что-нибудь близкое к задаче, вот  что получилось.
Вкратце: кастомный метод getBoundingRectElement возвращает див, форма и положение которого взяты у исходного элемента с помощью нативного метода getBoundingClientRect. Первым аргументом этот метод (зачем-то) принимает класс, который вешается на элемент, вторым - флажок, в зависимости от которого элементы перерисовываются по скроллу и ресайзу или не перерисовываются.
Способ обособления строк в отдельные строчные элементы, я думаю, значения не имеет. В моём примере эти элементы выделены заранее. А вообще можно это делать как угодно: делать replace, как советовал pashted, или например использовать selection.
В примере слова из верхнего блока не перерисовываются, а из нижнего - перерисовываются.