I had the same problem about a year ago, damn Origin, Punkbuster and all their problems... really hope it's sorted for BF:4
Ok let me try and remember what I did (ok that's impossible)
However I can make some suggestions:
Uninstall BF:3 completely, uninstall Origin.
Reinstall both, go into account settings deselect save to cloud.
Pause the update reset your router and restart it after 1 minute.
Make sure Origin is still Online (even thought you disconnected for 1 min) click unpause and see if it updates now.
There was an error I also got in 2011 that stopped at 99%
If this problem persists right click on Battlefield 3 and select repair install. It will only download possible corrupted files if you have any.
Let me know if your Punkbuster gives problems once you get into the Battlelog
Good luck & hope I could help