Function performs very slow

Please consider formating your sql - makes it so much easier to read (it was really a bracked hell to get thru).
As to optimizing your where section, not much to do:

WHERE (@CUSparam = 113
   OR  dbo.E_Estimates.Customer = @CUSparam
      )
  AND ((@CHKparam = 0
  AND   dbo.E_Estimates.[Assy Q] = -1
  AND   dbo.E_Estimates.E_Status IN (1,2)
       )
   OR  (@CHKparam = -1
  AND   dbo.E_Estimates.[Assy Q] IN (-1,-2)
      ))
  AND ((@FLDparam = '[Part Number]'
  AND   dbo.[Part Numbers].PartNumber LIKE '%' + @TXTparam + '%'
       )
   OR  (@FLDparam = '[Description]'
  AND   dbo.[Part Numbers].[Description] LIKE '%' + @TXTparam + '%'
      ))

You should look at placing correct indexes on your tables, to gain performance.