Like I said, all the options should be stored in the database.
I don't use WordPress so I don't really know how they do it, but any site that allows changes has to store that changing variable somewhere, and it's usually the database. PHP asks the database for these variables and then displays the website based on them.
If WordPress does not have the option of multiple themes, you're going to have a lot of work if you want to implement it yourself. If you don't want to fiddle with WordPress, you can copy the files and edit the css properties without changing the names.