You can create a multiple-value field collection field.
In the "field collection item" entity type, you can create the fields for the image and body text.
Afaik, the built-in image field type does not really work with external images. This problem is discussed here: Linking image field to an external URLLinking image field to an external URL
And now for the output.
Under "manage display" of the field collection item, use Display suite, with ds_extras enabled. Choose "Reset" as the layout (which will disable all divs that wrap the field collection item). Then create a ds custom field using token, and use it to put the other fields into your custom html.
Or alternatively, override field-collection-item.tpl.php in your theme, or better, override field-collection-item--field-xyz.tpl.php. I am not sure which exact template suffix to use to target the specific field collection item type. You should play around a bit and then we can update the answer based on your findings.