I have been playing around with this problem for a few weeks now and I think I may have fixed it, at least on my old XP machine running SP3.
I uninstalled my version of Skype that was 18.104.22.168 and went and found version 22.214.171.124 and installed it. I went to tools, options, Advanced, Automatic updates and turned off automatic updates, saved and closed Skype down.
Then go to start\run and type
services.msc. Go down the list until you see the Skype updater, it's probably set to automatic, turn it off by clicking it and choosing it.
Then I did a couple of other adjustments which I don't know if they made any difference to the final outcome or not but YMMV So I went to start/run and typed
%appdata%\Skype and clicked OK.
Once in that folder I made a new folder called
Profile Backup and dragged the folder with my name into it so my name folder was gone completely inside it, move it don't copy it. Then I quit Skype and restarted it so it would make a new profile, you will have to redo your profile pic etc and other stuff when it starts but I just did my photo and left the rest. You will need to do your username and password too so I hope you have it handy.
Don't upgrade if it asks you to. Close Skype, then go back to
%appdata%\Skype and you will see your new profile name folder again. Now go into the Profile Backup folder where you saved your original profile and send or drag your old profile over the top of your new one to overwrite it.
When done close the data Skype folder and then go to start\search and search for every instance of
SkypeSetup.exe and delete them I think I found four instances of it in different folders and forms even found the original Skype version 1 :-) deleted them all and restarted Skype and now it works perfectly whoopeee!