So why didn't Byleth get revealed before 3H was actually out? They got revealed well after the case. They weren't relying on 3H sales for the character either(so obviously its success didn't matter, as they were chosen independently).
This still shows a matter of the recency factor, something a lot don't have. The closest thing to advertisement was for DLC, but you aren't advertising an upcoming game if the game is already out either. That never makes sense. With your wording, that means Byleth couldn't have been chosen strictly to advertise 3H, but because it was an interesting pick from an upcoming game. The only advertisement possible is the reveal advertising the DLC, as noted a moment ago. Thtat's the only thing that remotely fits.
This is why Corrin and Roy are so far the only actual advertisement picks. They were revealed to advertise a game that wasn't out yet. Hero is only a technical case of it because Luminary isn't the only part of the character, but actually does come close. And only for Definitive Edition.
When they aren't used to advertise the actual game? No, no they aren't. Cause that's not how it works. Byleth has to actually advertise a game that isn't out to be shilling it. Which we already know for a fact they didn't do. That's not how context works. Byleth was clearly decided to be revealed later on, and at best you could say they were advertising the DLC only, something that wasn't decided upon immediately more than likely. So it's more business sense in promotional timing, but does not remotely correlate to why Byleth was chosen. They know the release date, after all. So why was Byleth revealed way after 3H was out in stores? Timing clearly does not match up at all.
Incineroar, Greninja, Byleth, Bayonetta were all from games that were recently out by they weren't used to help sell the latest games. If anything, the games being released beforehand only help the characters be more notable/sell better to the audience. More like reverse advertising instead. Joker's another example, who wasn't used to advertise any upcoming game either(especially when Scramble, the only real one, was unrelated to Smash in itself and was going to be revealed before Joker was). Promotional timing for reveals do not correlate to the core reason for being chosen. If you are going to be revealed after a game is already out, it's pretty hard to advertise an already selling game. That's solely a recency factor instead, not for the sake of advertisement. That's why Byleth does a terrible job of selling 3H in itself(only the DLC can be argued reasonably here, because at least it advertises that). Why would you be selling a game that already has been out for months and sold particularly well. Timing doesn't mean it's the cause of it alone. That's ignoring some more key context.
Let me rephrase;
From an upcoming game =/= there to advertise that upcoming game. These are different situations. The only two that actually does both(again, DLC is not an upcoming game) are strictly Roy and Corrin. Hero, as I noted, partially counts, but that's only cause of Luminary, and we know the character was added for the legacy first and foremost. Luminary as a face however does correlate very clearly to advertisement, or at least being the first face. The rest just don't fit the bill in timing. They were revealed way too late to actually advertise an upcoming game. Besides, the term shill is a really bad term that assumes there's a remote problem with choosing characters from recent games(basic timing that's been in every Smash game). It's a very healthy thing and keeps the roster with many relevant/recent characters along with various fan picks. The roster would be honestly really bad if it removed all the relevant characters. We'd lose tons of cool movesets and unique ideas. We'd lose tons of Pokemon too. The only ones that didn't have recency on their side were Pikachu(mascot), maybe Pichu(cause clone, though recency was still a factor, just like Roy. Pichu's a type of mascot, though), and Pokemon Trainer. So half of them are more recency-based to begin with. There's a lot more examples. Only Marth would actually stay in, as everyone else was a recency pick from a game that was started on at the right time to add to Smash. Lucina wasn't just an Echo, but from an upcoming game. I could pick apart each recency pick too, but those are enough examples to show that it matters way more than the silly advertisement factor which is not really all that much there(it's like 2 and 1/4 characters at best).