Sql Server Replication requires the actual server name to make a connection to the server
You need to restart your instance after doing sp_addserver in order to get a proper @@SERVERNAME response. This is from BOL: 


  The local definition takes effect only after the Database Engine is restarted. Only one local server can be defined in each instance of the Database Engine.