As someone mentioned above, BPL is actually facing the curse of lying on the trunk line. Due to that even if there is a demand for BPL-SBC train, eventually the train is slotted between NDLS/NZM and SBC using BPL as a passing station. This scenario is true for other stations also which are lying on the trunk line like Agra, Jhansi, Gwalior, Nagpur or even Kanpur, Dhanbad, Gaya etc over the other trunk line.
Indore got a lot of trains as it used to be a terminal station. However, once the GC will be over I think few trains will move ahead from Indore to Mhow or Khandwa.
Jabalpur...
more... is benefited because it is king of it's own territory plus a zonal HQ. If you see entire ALD-ET section, no city can take over JBP. Hence it gets most of the lion's share.
Plus with BPL I also believe there are yard and platform constraints, pf 6 of BPL isn't 24 coacher and also the yard of BPL is is quite small in comparison to JBP, maybe 1-2 washing lines and 2 stabling lines I suppose. Even HBJ also didn't have big yard, 3 washing lines and 1-2 sick lines. With the limited infrastructure it isn't possible to run many trains.