RewriteCond %{HTTP_HOST} ^blog\.cooklikeyourgrandmother\.com
RewriteRule ^http://blog\.(.*)\.html$ http://cooklikeyourgrandmother\.com/blog/$1/ [R=301,L]
That to me looks like you are not understanding it properly (or typo'd).
That particular rewrite rule expands to this:
http://cooklikeyourgrandmother.com/blog/cooklikeyourgrandmother.com/year/month/title/
Unless less you meant:
RewriteRule ^http://blog\.cooklikeyourgrandmother\.com/(.*)\.html$ http://cooklikeyourgrandmother\.com/blog/$1/ [R=301,L]
You might also want to take the time to prevent image theft. Using something similar to:
SetEnvIfNoCase Referer !\.cooklikeyourgrandmother\.com no-external-linking=1
ReWriteCond %{ENV:no-external-linking} 1
RwriteRule \.(gif|GIF|jpg|JPG|png|PNG)$ /bollocks/no-external-linking.png [PT,MC]