You should be able to use adb backup which is takes a complete backup of the phone.
You'll need to install the Android SDK but this should allow you to backup the whole device
Backup
There are a number of parameters you can supply but the simplest way to do a full backup is to run: adb backup -all -f C:\backup.ab
More info can be found on this xda post which although it uses a Galaxy Nexus it should apply to any 4.0+ device
Restore
With your device connected open your command prompt again, and type:
adb restore C:\backup20111230.ab
replacing 'C:\backup20111230.ab' with the location of your backup file.
You should see a screen like the one below:
Simply type in your current encryption password (if you've set one), and the password with which the backup was encrypted (if you chose to set a password), and the restore will begin. It again will take several minutes depending on the size of the backup and the options chosen.