Re: Voice quality
There are some providers insisting on G.729, that's when you get shite voice quality.
Any semi-decent one will give you G.711 which is (except for a bit more latency) indistinguishable from ISDN. However even the latency should be much lower than 150 ms end to end. If it's not you or your ISP are doing something seriously wrong. Typical problems include not traffic shaping the Uplink and not prioriticing UDP.
Any decent telephony provider will tollerate no more than a single packet being dropped per 10 minute telephone call.