Good suggestions, but I have one more to add that may be what you need:
1) Download all the site files needed for the site.
2) Zip all the files and make sure you keep the same folder structure.
3) Use PHPAdmin and do a full SQL export of your database and download it as a zip file. (This assumes the only database and tables are for the site you are selling.)
4) In your hosting control panel under SQL databases, record the database name and user name(s). You can create new ones after the site is install, and should, but it may be quicker to just duplicate everything for the initial install.
The buyer then reverses the steps:
1) Unzip the files.
2) Upload to the host.
3) Create a database and user(s).
4) Use PHP admin to import the exported database.
5) Check database user passwords and config.php (if used).
6) Check for any needed file permissions like 666, 777, etc.
7) Test
I just wrote this down from memory, but I think it is correct.