"What is inside the box?"
You do. Because it's not just an indirect object. It's the Topic of the sentence.
To me it seems like the topic is necessary here because Japanese often omits the topic. One might misunderstand the meaning if は isn't present.
I don't see why not. Do note that your translation emphasises the inside of the box itself (箱の中) rather than the thing inside it( 何), since "箱の中" is closest to the verb.
This is just me guessing here but the reason why 何がありますか is used instead of 何ですか is because the latter implies the object is defined, right?