Because I am a designer rather than a coder, to add promotional images to a product page I would use a different Product Details Page template with the image already coded in. Create the templates, use template override and select the relevant template for each product. Thus you have full control over where and how the image/banner is displayed.
You could use a custom field of image type, but I found that this will appearat the bottom of the page where custom fields are set to display and would be less obvious.
As for the multi-shop issue, this would need special programming.