Is this also another case for hosting your main site on www.example.com instead of example.com? This way you could have cookies only on www.example.com while hosting user generated content on assets.example.com or whatever sub-domain you want that's not www?
Yes and no: one thing I totally forgot to mention is phishing.
You don't want to give any semblance of endorsement to user-generated contents: many viewers will check only the main domain, due to how browsers' URL bars hide stuff.
Having a total different domain help highlighting that it is not official content.
There's probably some benefits around blacklists too.
For example if a user uploaded questionable content to assets.example.com/uploads, such as pirated content then someone could submit that to search engines and other lists to get your domain blacklisted. It's quite possible these blacklists could be related to the apex domain, not necessarily the sub-domain. A separate domain guarantees your apex domain won't get penalized.