Is it more due to legal reasons (such as frequency allocation) or to technical reasons?
Both. And the dominant reason is, as always, cost.
I'll illustrate in RX first:
Now, radios like these work by mixing the RF signal down – in this case, usually to a fixed IF (intermediate frequency), from which the actual demodulator (AM, FM, digital...) generates the message signal (audio, data...).
So, for that mixer, you need a local oscillator (LO) that usually has to be
adjustable. The frequency of that oscillator needs to be $f_\text{RF}-f_\text{IF}$ – or an integer factor of that, in fact, since mixers produce more than one intermodulation product:
Your average mixer, fed with a tone of $f_\text{LO}$ on one input, and the antenna on the other, will convert (there's a bit of a mathematical derivation that I'm skipping here) signal from $f_\text{RF}$ to $f_\text{RF}-f_\text{LO}=f_\text{IF}$. There's nice filters around $f_\text{IF}$, so that signals a little below or above $f_\text{RF}$ don't interfere.
However, what it'll also do is convert $f_\text{other}= n\cdot f_\text{IF}\pm m\cdot f_\text{LO}$ to $f_\text{IF}$, for a lot of different values of $n,m\in \mathbb N$. Which means: Assuming you have IF at 27 MHz, and you use a 100 MHz LO, you want to receive 127 MHz (i.e. you convert 127 to 27 MHz, because that's your IF where your demodulator gets it).
Now, sadly, you also get (2·100+27) MHz, (2·100-27) MHz and other intermodulation mapped onto your IF. Because the signals at 227 and 173 MHz are not of interest (but interfere), you need frontend filters to cut them out before they even reach the mixer.
Analog filters are, with a high probability, the most expensive part in a professional narrowband radio. The more bands you serve, the more filters you'll need – in fact, you'll find that you'll get multiple parallel receiver chains in such devices, simply because generating a range of good LO frequencies can get daunting, and also, because impedance matching of anything only applies to a limited range of frequencies.
In TX, very much the same applies, but you might even have to be more careful, because if you forget to filter a strong unwanted intermodulation product, you're not hurting yourself, you're interfering with others. And, fun fact, if you have a frequency duplex device where the receiver might be active while the transmitter is, too, but on a different frequency, and you mess up the crosstalk suppression due to not having sufficient TX filters, you might simply fry your sensitive receiver frontend with the output of your transmit PA. In less than a couple microseconds, in fact.
Now, I'm coming from a SDR background, and "30–870 MHz" doesn't sound all that enormously much to me – we SDR folks typically trade filter quality for frequency agility during research and design, and then, as soon as we're ready to prototype things for real usage, add filters when we know where in frequency we're going to operate. So, for the simple prototyping phase, the whole LO generation, mixing and filtering chain can fit inside a single IC or on a rather compact board. Take the popular RTL-SDR dongles: They are, too, IF receivers, but their coverage is, depending on the tuner/mixer IC used, is e.g. 24–1800 MHz. And that's with a sub-$3 tuner IC! Of course, selectivity of these devices is horrible compared to a high-end commercial receiver, and the phase stability and dynamic range can be improved, but that are all cost points that the designers of these (originally TV) receivers had to avoid.
You can make all that a bit better – and you'd end up with devices like USRP B200mini, which can tune their LO from 70 to 6000 MHz and allow ~56 MHz to be received at any instant – so your lowest frequency is (70-56/2) MHz = 32 MHz, your highest 6028 MHz.