Hi Aron,
well, as of now, there is no way to just insert a row at a specific index, like you would do in Excel. Actually you're the first to ask for such a feature :)
However, it does not seem to me too complex to add it (basically using what you're already doing), as long as you don't have too many rows to move (as I suspect it would be a O(n) operation).
If you have a workaround for now, I suggest you file a ticket on the bugtracker and I (or some other contributor) will take care of it, or you can also give it a try yourself ;-)
Cheers,
Eric