I think your best bet is to create the patches beforehand (e.g. using unfold), push these patches into the batch dimension, and try to perform the forward pass once.
Afterwards, you could reshape the output and process each patch using your bounding box approach.