The table that you want to cross apply with a function must be exactly before the function.
Compare the query in the question and the below query to see changes.
Select Request.AccNo,
[Owner].ClientID,
nRequest.RequestNo,
nRequest.RequestID,
nRequest.LoanTypeID,
Loan.Amount As LoanAmount,
Loan.LoanNo
From Teflan.dbo.LoanRequest As Request,
Teflan.dbo.AccOwner As [Owner],
Teflan.dbo.AccAction As [Action],
LoanRequest.dbo.LoanRequest As nRequest,
Teflan.dbo.Loan As Loan
Cross Apply
Account.dbo.GetNextPayInfo(Loan.LoanNo) As LoanNextPayInfo
Where Request.RequestID = Loan.RequestID And
[Owner].AccNo = Request.AccNo And Request.ClientID = [Owner].ClientID And
nRequest.OriginalID = Request.RequestID And
[Action].AccNo = Loan.LoanNo And [Action].ActionID = @PayActionID
Good luck