Being able to call landlines is tough, as it's part of the telephone number network. It requires infra to interface with the network, and I think you're better off compartmentalizing here. Any decent VoIP app, especially open source ones, won't be spending money on this capability.
Use any regular FOSS VoIP app, the choice is yours. Then, when you need to call a landline, you can do so with either a separate app or seperate SIM card, potentially getting a second one if that's better.