The format string is passed to the PHP date() function, so it needs to be a valid format string.
You could try escaping all the extra characters with a backslash:
[[+publishedon:strtotime:date=`\<\s\p\a\n\ \c\l\a\s\s\=\"\p\o\s\t\-\m\o\n\t\h\"\>%b\<\/\s\p\a\n\> ... etc,`]]
Or you could do it in three parts (put these all on one line):
<span class = "post-month>[[+publishedon:strtotime:date=`%b`]]</span>
<span class = "post-day>[[+publishedon:strtotime:date=`%d`]]</span>
<span class = "post-year>[[+publishedon:strtotime:date=`%Y`]]</span>
Or you could use a custom snippet that calls getdate() and returns the output you want (untested):
[[!MyDateFormat? &date=`[[+publishedon]]` ]]
<?php
/* MyDateFormat snippet */
$dateString = $modx->getOption('date', $scriptProperties, null);
$dateArray = date_parse($dateString);
$output = '<span class = "post-month>' . $dateArray['month'] . '</span>';
$output .= '<span class = "post-day>' . $dateArray['day'] . '</span>';
$output .= '<span class = "post-year>' . $dateArray['year'] . '</span>';
return $output;