0
Vitsy, 273 Bytes
This is a bit complex. Method is in the code block.
&".reeb fo selttob "?9b*D1-\[DN?l1-\[DO{]{?" ,llaw eht no "l1-\ODN?l\[DO{]?aO" ,dnuora ti ssap dna nwod eno ekaT"l1-\ODN?l\[DO{]?1-aO]DN?7\[DO{]{8\[DO{]{?" ,llaw eht no "l1-\ODN?7\[DO{]{9\[DO{]?aO"99 ,erom emos yub dna erots eht ot oG"l1-\O?l1-\[DO{]{?".llaw eht no "l1-\O
& Instantiate a new stack.
".reeb fo selttob " Push " bottles of beer." to the current stack.
? Rotate to the next stack.
9b* Push 99 to the stack.
D1-\[...] Do everything in the top set of brackets 98 times.
DN Duplicate the top item of the stack and output it as a number.
? Rotate a stack - this contains " bottles of beer."
l1-\[DO{] Print it out (except for the period), but don't remove any items.
{ Rotate the current stack - this skips the period.
? Rotate back to the original stack.
" ,llaw eht no "l1-\O Push " on the wall, " to the stack, then print it out.
DN Print out the top item of the stack as a number.
? Rotate to the next stack.
l\[DO{] Print it all out, but don't remove any items.
? Rotate to the next stack (top stack again).
aO Print a newline.
" ,dnuora ti ssap dna nwod eno ekaT"l1-\ODN Push "Take one down and pass it around, " to the stack and print it out.
? Rotate to the next stack.
l\[DO{] Print out everything in the stack, but don't remove anything.
? Rotate to the next stack.
1- Subtract one from the top item of the stack.
aO Print a newline.
] End the main loop.
DN Duplicate the top item of the stack and print it out.
?7\[DO{]{8\[DO{]{? Print out the next stack over (the one holding " bottles of beer.", but skip the period and the "s".
" ,llaw eht no "l1-\O Push " on the wall, " to the stack and print it out.
DN Duplicate the top item of the stack and print it out as a number.
?7\[DO{]{9\[DO{]? Print out everything in the next stack except the period.
aO Print a newline.
"99 ,erom emos yub dna erots eht ot oG"l1-\O Push "Go to the store and buy some more, 99" to the stack and print it out.
?l1-\[DO{]{? Move over a stack, print everything out but the ".".
".llaw eht no "l1-\O Push " on the wall." to the stack, then print it out.