Your CCSM configuration isn't sticking because you don't have ownership (permission) of key configuration files and folders in your home directory. You can verify this with:
$ find ~/ ! -user $(whoami)
To regain ownership of files in your home folder you can run this command:
$ sudo chown -R $(whoami):$(whoami) ~/
That should be sufficient for loading the desktop successfully. The CCSM configuration you mention in your question would then stick between reboots.
This issue is created by running certain GUI applications as sudo.
The resolution was to rename the ~user folder and create a clean one. Then copy the files from the old ~user folder.
The steps need to be performed a different account). Create an account B. Login as B. To perform the steps. The B needs to have sudo access. This can be done with. Consider A your account and B the different account to perform the commands.
$ sudo adduser B sudo
From the terminal (of B login) run:
$ cd ~A
$ cd ..
$ sudo mv A A.str
$ sudo mkdir A
$ sudo chown A:A A
$ sudo ln -s A.str ~A/A.str
Now login as A and copy or move your content from a folder A.str in your fresh login.
Assuming you can access the terminal, have you considered downloading and switching to another desktop environment? Recently I had a very similar problem with compiz/unity and the only solution was switching to GNOME 3. If you don't really care that much about the GUI, maybe that's the way to go.
So you can access your account and you can log into other accounts without any problem. I'm just guessing but maybe it's worth a try.
sudo apt-get install ubuntu-gnome-desktop
By the way, It can be a great moment to getting to know GNOME because the next LTS Ubuntu release will have it as default, from what I've heard.
You just need to turn the Unity plugin back on. The problem is this is a pain in the bottom because you've now got no graphical method to do this. So:
Try to open a terminal with Ctrl+Alt+T.
This may not work but you can try right clicking on the desktop and selecting "Open terminal here." Otherwise, you may need to change to a "hard" terminal by pressing Ctrl+Alt+F1 and log in.
Then run it with this:
The first part tells the terminal which display you want it to load on (otherwise it won't have a clue).
If you switched to a TTY in step 1, switch back to the graphical server by pressing Ctrl+Alt+F7 (or Ctrl+Alt+F8 sometimes).
There there should be a CompizConfig Settings Manager waiting for you.
Find the Unity plugin. Enable it (detailed instructions just below). You will be asked "Ubuntu Unity Plugin requires the plugin OpenGL. Enable Ubuntu Unity Plugin / Enable OpenGL"
Everything should spring into life but if it doesn't, you might have to restart. You can do that by going back to the terminal and running