In the advance black can play Qb6 before Nc6 and avoid some of white's lines with almost no drawback. I don't think c4 and relieving the tension in the center is the best comprimise to prevent b4. Instead just play Nh6 first and then if b4 take on d4 and after Nf5 white has to dislodge the knight with a move like g4 Ne7 white is playing with fire.
I also like the line with a5 instead of c4 but the b5 square could end up becoming a hole. Another idea is to play Qb6 before Nc6 and play Bd7-b5 exchanging your bad bishop besides puting your Queenside pawns on white squares.
The French defense is an excellent opening for black. There are many good variations. Here are some classic examples of these variations:
Classical Variation: 1. e4 e6 2. d4 d5 3. Nc3 Nf6 4. e5 Nfd7 (A popular variation although the main disadvantage is the 4...Nfd7 as it blocks the bishop on c8. This can easily be resolved by 5... c5).
Winawer Variation: 1. e4 e6 2. d4 d5 3. Nc3 Bb4 (This is the response I use as white cannot avoid double pawns without losing material. If white played 4. Bd2 then Black can play 4... dxe4 5. Nxe4 Qxd4, with white gaining a pawn. The line usually continues...) 4. e5 c5 5. a3 Bxc3 6. Bxc3 Ne7 (if white plays 7. dxc5 then Black can play 7...Qh5, overloading the queenside pawns so white is forced to give up one).
Advance variation: 1. e4 e6 2. d4 d5 3. e5 c5 4.c3 Nc6 5. Nf3 Qb6 6. a3 c4 (so if white plays 7. b4 then black can do en poisson) 7. Be2 Nh6 (black aims to get to Nf5. If white plays 8. Bxh6 then although black has double pawns, he can fiancetto the bishop and castle quickly)