I just posted a hack I discovered to adjust the height of repeater rows based on the text content in the data sheet. However, this only works for the initial repeater. It breaks when the repeater gets updated (per the Axure documentation note.) It might lead to a solution for you, though.
Also, a few years ago we came up with a way to adjust text widget sizes in a repeater using javascript injection. But… would be difficult to impossible to calculate text wrapping and height needed for something like a text area.
Not a great answer, but perhaps some combination of these could make some magic happen.
You can wrap the repeater in a dynamic panel, decrease the height (or width) to your desired “viewport area” and turn on “Scroll as Needed”. Or, do all this for widgets/groups/panels inside your repeater to scroll within a row.
I’ll try to look at your file if I get the time soon.