What errors are you geting?
Also, by default SQL is case insensitive, so using the UPPER function probably isn't needed.
At any rate, I think you need to drop the CASE expressions and use logic. AS a pattern, replace:
AND ACCT_NBR = case when ISNULL(@AcctNbr) or LTRIM(RTRIM(@AcctNbr)) = 'NULL' then ACCT_NBR else '%' + LTRIM(RTRIM(@AcctNbr)) + '%'
@AcctNbr IS NULL
OR LTRIM(RTRIM(@AcctNbr)) = 'NULL'
OR ACCT_NBR LIKE '%' + LTRIM(RTRIM(@AcctNbr)) + '%'
Additionally, this (catch-all query) is going to perform poorly becuase your predicates are not sargable. Here is an article about performance and some options: