Braden since Flarum uses auto scroll in many situations, this sounds like a problem the ads extension itself should take care of.
If you get flagged for displaying more than x ads per seconds, this should just be hard-coded in the ads library to not load any more ads than this. Or the same ad could be moved to not count as a new ad.
If you have ads in between posts, it shouldn't matter whether the discussion is short or long. Flarum doesn't load posts that aren't into view, and they will be skipped when scrolling up. That's usually up to 40 posts loaded at any given time, and scrolling to the top won't cause any post to be loaded in between, it will directly jump to the first 20 posts at the top.