Context free grammar for $L = \{w \text{ | }w \in \{a,b\}^*, |w|_a=|w|_b-1\}$
You can simply consider the following grammar: $$ S\to S_1 b S_1$$ where $S_1$ is the start variable of a grammar for the language of words $w$ with $|w|_a = |w|_b$. Correctness is self-explanatory.
So using the grammar you wrote, you get the following grammar:
$$ S\to T b T$$
$$ T \to aTbT| bTaT | \epsilon$$