Solution:
The commands on VLANs on the access switches for VLAN association with subnet are the root cause of the issue.
vlan associate subnet 192.168.48.0 255.255.255.0
This command tells the switch to associate traffic with the appropriate VLAN by source-IP address in packet headers.
What was happening is that the return traffic from a client would be dumped into the wrong VLAN on the access switch - the VLAN associated with its source IP, different than that of the client.
Removal of these commands on the access switches resulted in immediate desired connectivity across all VLANs.
EDITED to add: Credit for this fix goes to a fellow networking professional who pointed out their function and voiced his concern.
It kind of depends on how much data you will be moving between these two external subnets. If you allow the HP to route directly between those subnets, you can have as many 1GB streams between them as you have ports configured for them. With "router-on-a-stick" (I've always called it vlan-on-a-stick, but same concept), you would be limited to just 1GB in total throughput between the vlans (leaving out the possibility of doing an lacp trunk between the SonicWALL and the HP).
In doing this method, the third vlan would be considered a "transit network", and would make it easier down the road as your network grows to implement a dynamic routing protocol, or to add more routers into the network, if the need ever arises.
The HP switch would be acting as your layer 3 core, and you would have an IP address in each of the 3 vlans. The SonicWALL would need only an access port to the transit network, and it's own IP on that network.
From there, a default route statement in the HP pointing to the SonicWALL's transit net ip address, and two static routes in the SonicWALL (one for each of your 'external' subnets) pointing back at the HP's transit net IP.
The easy button is to simply run a vlan trunk to the SonicWALL, and put an address on each of the vlans you want to route for. I've done it this way in the past, and if you don't plan on heavy traffic, it's perfectly viable, and pretty easy to configure.
If you could post some of your route statements in your attempts at setting up the transit net, I'm sure someone could help you get that straightened out.
Best Answer
Yes. Layer 3 device is required. It could be Layer 3 Switch as well. No separate router is required. According to your explanation Intervlan routing has been configured. If you have Layer 3 switch, SVI is required to communicate between vlans. According to your Explanation
192.168.30.150
will be SVI(Switch Virtual Interface) or Gateway of your current VLAN.