they use location data along with other metrics
The key point is that you have to touch the two phones together. This contact will be visible in the accelerometer and microphone readings from either phone. Something needs to look at the readings from all the phones in the vicinity and find two that recorded a bump at the same time. The easiest way to do that - especially ten years ago, when smartphones didn't have much computing power - was to send the bump times and phone locations to a server and let it compare them all.
The alternative way to achieve this would be each phone broadcasting bump events to all nearby phones directly. There's not a great way to achieve this. Bluetooth can't support many phones connecting to each other this way, and access to it is limited in iOS. Wi-Fi Direct (aka Wi-Fi P2P) can do this, but not at the same time you're using normal Wi-Fi to connect to the Internet. However you do it, you'd have to be very careful to prevent someone spoofing the bump events to pretend to be the phone you wanted to send your file to.
So although it is possible to use Bluetooth to find out if two phones are in the same room, without sending anything to a remote server, it's not feasible to use that to make the "bump phones together to connect them" feature that was Bump's unique selling point.