Let $G=(V,T,P,S)$ be a context-free grammar without $\epsilon$ rules. Define a context-free grammar $G'$ which creates a language which consists of all words from $L(G)$ without one of the letters of a word which belongs to $L(G)$. For example, if $ab\in L(G)$ then $a\in L(G')$ and $b\in L(G')$.
The solution to the problem is as follows:
Let $G'=(V\cup V', T,P',S')$. $$ \forall (A\to \alpha)\in P\implies (A\to \alpha)\in P'\\ \forall (A\to \alpha B\gamma)\in P, B\in V\implies (A\to \alpha B\gamma)\in P'\\ \forall (A\to \alpha t\gamma)\in P, t\in T\implies (A\to \alpha\gamma)\in P' $$
Why $\forall (A\to \alpha B\gamma)\in P'$, because $\alpha, \gamma$ are strings of stack symbols (not just letters) hence they cannot be divided (like for example, $\forall (A\to \alpha B\gamma)\in P, B\in V\implies (A\to \alpha)\in P'\quad\land\quad (A\to \gamma)\in P'$)?
In your solution you missed some essential primes.
The idea is that the new grammar is just as the original one, except that it loses one of the generated symbols. But it should be clear that there is exactly one terminal that disappears. The primed symbol has the "task" of (not) generating that disappearing terminal. It hands this task to one of its successors.
Axiom $S'$, just like $S$, but remember a symbol has to be deleted in the derivation that follows.
If $A\to \alpha\in P$ then $A\to \alpha\in P'$ (Unprimed symbols behave as before.)
If $A\to \alpha B\gamma\in P$ then $A'\to \alpha B' \gamma\in P'$ (The task is delegated to a successor)
If $A\to \alpha t\gamma\in P$ ($t$ terminal) then $A'\to \alpha \gamma\in P'$ (no more primes, terminal was deleted)