I've seen there are some services who offer to open a channel back to you as long as you open one to them; maybe is there any who can open a channel to a 3rd party instead?
Usually, such services are time-limited or will keep their channel open only if you use their channel frequently. Otherwise, there is no incentive for them to keep the channel open, especially if you are running a client which does not route payments.
Also, which software is best suited for this sort of transactions at the moment?
That's actually a tough question! There's plenty of great wallets out there, but since most of them are designed for mobile devices, they don't really handle inbound channels well. I would have to do some thorough research to answer your question. I have been running a c-lightning node for quite some time now and it's great because I am not limited in any way, but such a setup would be unnecessarily complicated for you. Here's what I would suggest:
1) You can use whichever wallet you want while you friend uses BlueWallet to receive the payment without any extra steps.
2) You can both use Electrum and open a channel to some node (preferably the same one). Your friend can use the built-in swap functionality to exchange his off-chain coins to on-chain coins for a small fee. He will gain incoming capacity in his channel this way and he should be able to receive your payment.
I've had a look into Electrum but it looks like they only support a simplified subset of the lightning network features.
I think the biggest disadvantage is that you can't route payments which should be obvious given that no one keeps Electrum open 24/7. You might also have a hard time getting an inbound channel to work. It won't be a good choice for your plan. You might find some useful information in my "
Electrum Lightning Network walkthrough" thread.