In genere è molto meglio usare AND /OR costruzioni nel WHERE clausola invece di case espressioni :
WHERE (RAP10B.CLMSRC = '2'
AND rap10.lossdt_t BETWEEN Add_months(rap01.teffdt_t, - 36) AND rap01.teffdt_t)
OR (RAP10B.CLMSRC <> '2'
AND rap10.lossdt_t BETWEEN Add_months(rap01.teffdt_t, - 36) AND (rap01.teffdt_t - 60))