Well I had a similar problem, how to make a practical usable Bode plotter for closed loop analysis without spending vast amounts of money.
I have put together a basic system that covers 10Hz to 50Khz which covers my simple needs, it sweeps in frequency, and plots gain and phase together on a CRT.
It uses two rather obsolete but still useful budget pieces of equipment, and a simple interface between the two.
The first item is an HP gain phase meter 3575A which you should be able to pick up for a couple of hundred dollars.
This has two identical channels that work from 1Hz to 13Mhz with about +/-50dbdb of dynamic range (200uV to 20V rms dynamic range each channel), and can measure phase continuously over slightly more than 360 degrees. It has digital readout on the front panel with 0.1db and 0.1 degree resolution and dc outputs are available externally at the back.
That is my measurement "front end".
The other piece of equipment of about the same vintage is an HP spectrum analyser model 3580A which works from zero to 50Khz and has a tracking generator output. You can pick one of these up for perhaps five hundred dollars if you are lucky. This has one digital memory, so you can store one waveform while measuring another for direct comparison. Is also capable of driving an ancient servo type pen plotter, although I don't use that feature.
Anyhow, the tracking generator output (2v rms) will be the swept frequency source for whatever you are testing.
Now the problem is the gain/phase meter puts out a dc voltage, and the spectrum analyser expects to see an ac signal of the exact frequency it is sweeping.
That can be overcome by using an analog multiplier.
One multiplier input is driven from the tracking generator.
The other multiplier input with the dc voltage from the gain/phase meter after a bit of scaling.
The multiplier output goes into the spectrum analyser input.
Dc values from the gain/phase meter control the rf amplitude coming out of the multiplier and hence the amplitude displayed on the spectrum analyser as it sweeps in frequency.
When set for a linear vertical scale (not db) the spectrum analyser will plot either gain versus frequency (in db), or phase versus frequency as a vertical deflection above the baseline. The db to voltage conversion is carried out in the gain/phase meter, the spectrum analyser is run in direct linear mode.
The frequency needs to be swept twice with one trace being stored in memory.
Then you hit single sweep again, and get the other signal up on the screen and you can then see both gain and phase together.
The only real limitation is that the frequency scale is linear not logarithmic, but if you are only really interested in perhaps one particular decade, its something you can soon get used to.
Do a really broad band sweep first, then do another sweep over the portion of most interest to expanded it out.
For higher resolution of readings of phase, frequency, and gain margins, the HP3580A allows manual frequency tuning, so you just tune for 0db gain, and read the phase straight off the phase meter to 0.1 degree resolution.
Then you can manually tune for -180 degrees phase, and read the gain margin from the digital display with 0.1 db resolution, digital frequency readout is to 1Hz resolution.
The trace on the CRT is small, but it does give a very good indication of overall shape, with the usual 10db per division, and 45 degrees per division vertically. And the digital readouts gives all the resolution you could wish for at any specific point of interest on the curves.
Its a real budget system, and a bit Mickey Mouse, but its a very useful tool that allows me to do things I could never have done before. And it was pretty straightforward to put it all together.
The two input channels on the 3575A gain/phase meter allow closed loop measurements of switching power supplies, and a low frequency 1000:1 current transformer makes a low cost injection transformer from the tracking generator.
I tried several different current transformers before I found one that looked truly flat with only about half a percent drop off at 50Khz.