Yup, that was a great suggestion, thank you.
Modifying the raw source as follows, I managed to bring it down to 181 characters:
for($r=99;$r;--$r){$s=$r==1?:"s";echo "$r bottle$s of beer on the wall, $r bottle$s of beer.
Take one and pass it around, ",$r-1," bottle$s of beer on the wall.
";}echo "
No more bottles of beer on the wall, no more bottles of beer.
Go to the store and buy some more, 99 bottles of beer on the wall.";
Basically, this tries to give the dictionary compressor a few more opportunities to match. That's harder to get right (and less intuitive, longer text sometimes compresses to smaller output!) than it sounds. Not only is the compression result a bit hard to predict from the editor, but also better compression may be larger in the end due to escaping.