Okay, so here we go. Put the following in a file called "images.xsl" in the same directory as your sgdk2 file.
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<xsl:apply-templates select="ProjectDataset/GraphicSheet"/>
</body>
</html>
</xsl:template>
<xsl:template match="GraphicSheet">
<xsl:param name="imagedata" select="."/>
<img src="data:image/png;base64,{$imagedata}" />
</xsl:template>
</xsl:stylesheet>
Then edit the .sgdk2 file and add the following line just below the first line of the file:
<?xml-stylesheet href="images.xsl" type="text/xsl"?>
So it should look like this:
<?xml version="1.0" standalone="yes"?>
<?xml-stylesheet href="images.xsl" type="text/xsl"?>
<ProjectDataset>
Now open your sgdk2 file in Firefox or Chrome. All of your images should show up. This might be a little slow with 300 images, but hopefully not too bad. The reason it works is because SGDK2 stores images in Base64 format, which Firefox and Chrome understand and can decode as images if you specify them as data URLs. Then you'll need some way to save all the images. I imagine there are a plethora of plugins for Firefox or Chrome which could do the job for you.
I gotta say, I don't do much programming in XSL. It's impressive what you can do with so little work (although a lot of the work I would have had to do is mitigated by the fact that SGDK2 saves in XML files and Firefox understands data URLs)