Spectrum analyser part is covered by Hi res Picoscopes very well..
There is a third party FRA app for them, but is limited to built in siggens.
Picoscope 4262 with 5 MHz bandwidth and 8.5 µV RMS noise is very usefull.
Also they have great API, so they are directly usable from LabVIEW,MATLAB, or your code for any custom analysys.
Also, Digilent Analog Discovery is very interesting...