My knee-jerk reaction would be to use SVG. Exploding your example:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<div>
<p>
<br />
</p>
</div>
<div style="border-style:solid;border-width:2px;border-color:rgb(0,0,0);background-color:rgb(255,232,0);width:302px;height:185px">
<img style="position:relative;z-index:100;left:126px; top:39px;" src="https://s3.amazonaws.com/signoffmainbucket/8CA8EC1A-C1C5-4390-9FC4-649648AA26C8.jpg" alt="image"/>
<p style="opacity:1.00;color:rgb(0,0,0);position:relative;margin: -123px 0px 0px 18px;font-family: Helvetica, Helvetica;font-size:14px">
<b>John
</b>
</p>
<br />
<br />
<br />
<br />
<p style="opacity:1.00;color:rgb(0,0,0);position:relative;margin: 0px 0px 0px 18px;font-family: Helvetica, Helvetica;font-size:14px">
<b>XYZ Company
</b>
</p>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
</div>
</body>
</html>
Ow. Don't do this. We can help.
Doing this properly, we get something like this:
<?xml version="1.0"?>
<svg width="407" height="263" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Created with SVG-edit - http://svg-edit.googlecode.com/ -->
<g>
<title>Layer 1</title>
<rect id="svg_2" height="262.999995" width="406.999984" y="-0.000003" x="-0.000005" stroke="#000000" fill="#ffff00"/>
<image fill="#000000" xlink:href="https://s3.amazonaws.com/signoffmainbucket/8CA8EC1A-C1C5-4390-9FC4-649648AA26C8.jpg" id="svg_3" height="170.000002" width="208.999986" y="64.999977" x="186.999985"/>
<text xml:space="preserve" text-anchor="middle" font-family="serif" font-size="24" id="svg_4" y="41.999977" x="52.999985" stroke-width="0" stroke="#000000" fill="#000000">John</text>
<text xml:space="preserve" text-anchor="middle" font-family="serif" font-size="24" id="svg_5" y="193.999977" x="97.999985" stroke-width="0" stroke="#000000" fill="#000000">XYZ Company</text>
</g>
</svg>
If your browser supports inline Base64 encoding, you can drop this into the URL line to see what I did there (this works in Chrome):
data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+Cjxzdmcgd2lkdGg9IjQwNyIgaGVpZ2h0PSIyNjMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogPCEtLSBDcmVhdGVkIHdpdGggU1ZHLWVkaXQgLSBodHRwOi8vc3ZnLWVkaXQuZ29vZ2xlY29kZS5jb20vIC0tPgogPGc+CiAgPHRpdGxlPkxheWVyIDE8L3RpdGxlPgogIDxyZWN0IGlkPSJzdmdfMiIgaGVpZ2h0PSIyNjIuOTk5OTk1IiB3aWR0aD0iNDA2Ljk5OTk4NCIgeT0iLTAuMDAwMDAzIiB4PSItMC4wMDAwMDUiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0iI2ZmZmYwMCIvPgogIDxpbWFnZSBmaWxsPSIjMDAwMDAwIiB4bGluazpocmVmPSJodHRwczovL3MzLmFtYXpvbmF3cy5jb20vc2lnbm9mZm1haW5idWNrZXQvOENBOEVDMUEtQzFDNS00MzkwLTlGQzQtNjQ5NjQ4QUEyNkM4LmpwZyIgaWQ9InN2Z18zIiBoZWlnaHQ9IjE3MC4wMDAwMDIiIHdpZHRoPSIyMDguOTk5OTg2IiB5PSI2NC45OTk5NzciIHg9IjE4Ni45OTk5ODUiLz4KICA8dGV4dCB4bWw6c3BhY2U9InByZXNlcnZlIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBmb250LWZhbWlseT0ic2VyaWYiIGZvbnQtc2l6ZT0iMjQiIGlkPSJzdmdfNCIgeT0iNDEuOTk5OTc3IiB4PSI1Mi45OTk5ODUiIHN0cm9rZS13aWR0aD0iMCIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjMDAwMDAwIj5Kb2huPC90ZXh0PgogIDx0ZXh0IHhtbDpzcGFjZT0icHJlc2VydmUiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGZvbnQtZmFtaWx5PSJzZXJpZiIgZm9udC1zaXplPSIyNCIgaWQ9InN2Z181IiB5PSIxOTMuOTk5OTc3IiB4PSI5Ny45OTk5ODUiIHN0cm9rZS13aWR0aD0iMCIgc3Ryb2tlPSIjMDAwMDAwIiBmaWxsPSIjMDAwMDAwIj5YWVogQ29tcGFueTwvdGV4dD4KIDwvZz4KPC9zdmc+
Obviously, browser URL line copypasta is suboptimal. I heartily support someone updating my answer once SO supports SVG as an image format, because I lack a convenient webhost for SVG that can handle the load.
As for everywhere else, here's how you can embed an SVG file in your page. But, as you've mentioned, there are additional ways to do this.