What's stopping you from creating a custom footprint? Once you understand the process, it can be done in less time than it took you to write up your adventure and post it here.
Nothing, and I did

I’ve been using Eagle for almost 20 years now, I have a very extensive set of personal libraries. Normally when I see a part claim to be something, I expect it to fit that footprint though, and if it doesn’t, it means I’ve missed something…
I’ve had the occasional email back from the assembly folks along the lines of “Hey dummy, this part you specified isn’t SOIC-8, it’s xxx-8” , usually at the last stage of assembly when someone’s actually tried to put the part onto the board. Just thought I’d ask to see if this was another well-known part-type.
So I’ve shrunk the body width down to 4.1mm, and set the pad separation to 0.635mm, and I guess we’ll see how well it fits the data sheet when it comes back

I will admit to being opportunistically lazy, because the samacsys plugin is awesome, but I still modify their schematic symbols to suit
- I’m not a fan of “the symbol must reflect the physical location of the pins”
- I group my commonly-named pins as (example: GND@1,GND@11) rather than GND_1 and a separate GND_2
- I prefer my anchor point to be the center of the symbol
- If it’s NC then I like to use the ‘nc’ direction
- I use bottom-left anchors for >NAME & >VALUE and reposition them to top/bottom of the symbol
- The font-height in the footprint is too big (I prefer 32mil) and for some reason they superimpose name/value over each other
- I like to add a USE attribute at the device level, which is what my scripts look for to generate BOMs. There’s a warning if a part doesn’t have one of USE or DNF (do not fit)
… but having theirs as a starting point cuts down on linking together pin and pad,
and measuring out the footprint (I swear some data sheet designers must be being maliciously compliant with providing all the necessary information in the least informative way…). The plug-in is also ridiculously easy to use, once installed: type the part-name, get it added to a library

Aside: The name@pin-index format is doubly useful. Eagle doesn’t render the @ or anything after it, so you just see the signal name, and the @pin shows up in the device creation step, making it trivial to get the pads guaranteed to be right. Just connect pin1 to @1 etc. if you make a wrong click (pin X connected to pad Y, say) without noticing it, you’ll find out when there’s no match for the corresponding pin Y a little later. You have to make two screw-ups instead of one to end up with an invalid device, which is far and away less likely. Once I started using this, I never did anything else.