I'm not sure you realize that ASIC stands for Application Specific Integrated Circuit - it's a cover term for any sort of circuitry (silicon based or otherwise) that performs a specific task or set of tasks. GPUs and CPUs are both arguably ASICs - just performing a very generalized set of tasks.
There's more to ASICs than just bitcoin. Bitcoin is a niche within a niche, in terms of global semiconductor manufacturing.
FPGAs are certainly reprogrammable for different tasks. The main problem is that writing the hardware description (in Verilog/VHDL) is much harder than the parallel coding for GPUs, and depending on the task, the insane memory bandwidth of GPUs may be of significant use. For large data processing, the onboard memory and bandwidth of GPUs is incredibly useful, and generating FPGA boards with the same capacity would be significantly more expensive.