The "B string problem" on 5 string basses is exactly what it sounds like - a string problem. If you look at the diameters of strings in 5 string sets, and understand the Physics behind things, the strings that are available commonly are wrong. For even tension across the strings, you need a geometric progression of diameters - each string needs to be 1.33x the diameter of the next smallest one to be right - balanced in tension. For some reason, bassists have come to expect that 40-60-80-100 or 45-65-85-105 (arithmetic progresions, not geometric) are somehow "right" when in fact they aren't - both of those sets are unbalanced, with G strings that are OK, D strings that are way too tight, A strings that are a bit too tight, and E strings that are a bit floppy. When you take that set design the next step and add a B string (and just add .020 to the diameter, the math is too far over the edge - the result is a floppy, bad sounding B string. It's a string problem.
What should it look like? My 5 string basses wear sets that are typically 35-50-70-95-130. That's pretty well balanced - a bit on the "progressive" side in that the tension goes up a bit (but not much, really) in the bigger strings. I like low tension strings, and I use a 130 B - that's a low tension B string. If you like a set with a 100 E, you need a 135 B to keep up, and if you normally use sets with a 105 E, you should be running at least a 140 B string.
A longer scale is a band aid - sure it helps a bit, as it increases the tension of the string, but a longer neck is actually floppier itself. that's simply Physics, with no way around it. A longer scale also makes the strings that were already too tight even worse. With the right strings, there is nothing wrong with a 34 inch scale.
It is NOT a problem with your bass - magnetic pickups as used on our basses don't actually roll off at low frequencies. It IS a string problem - if you want to fix it, fix it with a better matched set of strings.