Hey
@JeffClevelandTN thanks for tagging me in on this.
For before and after we use a few different methods depending on the client, but what we've found more often than not is that people rarely go past a handful of images. So even if you have a massive gallery of images, they generally look at 3 or 5 and call it good.
What we've done in the situation where the images are taken at different angles is made it into a single large image with text on the top image saying "before" and text on the bottom image for "after". Make a single image that's 1200x1200 or larger if you want people to zoom in. Then just post as a column/row gallery. So not using a gallery plugin at all, just straight images.
If you decide to do the slidebar method, Elementor Pro has this built in. We've used it before for some clients, but as you mentioned, if it's not from the same angle, it loses it's effect. People are a little forgiving, but not much
NextGEN is kind of the grand daddy for galleries. They've been around a long long time. We tend to use them on photographer type sites.
If you're doing a lot with Elementor, check out the "Ultimate Addons for Elementor" plugin. They have a gallery image widget. With their images (when editing in the media area of WordPress) you can define "UAEL" numbers which act like a sorting number. It's the same place where you edit title, alt and description. So, in the case where you have images out of order, you can set it to sort using UAEL number and you're back in business.
The other way to make sure you images are beside each other is to modify the publish date/time on images. Then you can sort by date/time and your two images will be beside each other. We usually set the same "hour" but then change the minute as our ordering etc.
Hopefully one of those suggestions help you.