I think that Numerictext returns true/false, it's used to test whether it's a valid numeric, not converting.
Try:
and {ARATR.FISCYR}>=totext(Year({?StartingPeriod}),0,"") and {ARATR.FISCYR}<=totext(Year({?EndingPeriod}),0,"")
and {ARATR.FISCPER}>=totext(Month({?StartingPeriod}),0,"") and {ARATR.FISCPER}<=totext(Month({?EndingPeriod}),0,"")
This assumes that your parameters are numerics.
If they're strings, you won't need to do anything.
-k