At least on Twitter, it's fairly easy to build a filter for µBlock (or similar blockers) that will trigger on having "promoted" within a Tweet <div> and hide it. At least in the Instagram app, the ads have the same "promoted" text in their heading, so similar filtering can probably be applied to the web version.
"Facebook adds 5 divs, 9 spans and 30 css classes to every single post in the timeline to make it more difficult to identify and block 'Sponsored' posts, oh my."