Coding Badly,
Your piece of code shows exactly the same behaviour.
So I conclude that "self reset" is not a real option in a sketch (it works in the bootloader for the reasons stated in the article I pointed to previously, if I remember correctly).
Time for the workaround.