Based on the idea posted here: https://community.sdl.com/solutions/language/translationproductivity/translation-productivity-ideas/i/trados-studio-ideas/make-scroll-lock-work-like-in-excel, I've prepared the script below, which accomplishes this.
To work as intended and have the cursor stay put while the file is scrolled up or down by using the Up and Down arrow keys or the Page Up/Down keys, the Scroll Lock key must be toggled on first. Toggling off Scroll Lock restores the usual operation of the keys. Modify the number of lines scrolled at a time by changing the number after WheelUp/WheelDown.
#If GetKeyState("Scrolllock","T")
Up::
Send {WheelUp 1}
Return
Down::
Send {WheelDown 1}
Return
PgUp::
Send {WheelUp 10}
Return
PgDn::
Send {WheelDown 10}
Return
*Edited to add Page Up and Page Down as scroll keys.