As finding lyrics should be trivial, you need to be sure where the slowdown occurs - in the database, sending data to webserver, or generating the page.
If you want to change these pages from dynamic to static, you will need to write a script - even a simple bash script would work. You can also do this through sql, although it will require a hefty amount of string concatenation.
With mysql
SELECT CONCAT("SELECT CONCAT(\"<html><head><title>\",artist, \" - \", song_title, \"</title><br>\",lyric, \"</html>\") FROM artist INTO OUTFILE \'", CONCAT(artist_id, \".\", song_id), "\';") FROM artist a, song s WHERE a.artist_id = s.artist_id INTO OUTFILE "script.sql"
This script generates a script which in turn generates very simple html pages for each song....guessing on table design