Find member of CFL that is Levenshtein-closest to non-member string
Yes.  This can be done, using Levenshtein automata.

Let $S_k = \{y \in \{0,1\}^* : d(x,y) \le k)\}$.  Then the set $S_k$ is regular, and one can construct a finite-state automaton for it, called a Levenshtein automaton.  Now the intersection of a CFL and a regular language is another CFL.  Also, given a CFL, you can efficiently determine whether it is non-empty or not, and if not, you can efficiently find an example of an element of it.

So, we obtain the following simple algorithm:


For $k:= 1,2,3,\dots$, do:


If $L \cap S_k$ is non-empty, find $y \in L \cap S_k$ and output it.



This can be sped up by using binary search to find the smallest $k$ such that $L \cap S_k$ is non-empty.

The same approach can handle your proposed restrictions as well, as those simply amount to intersecting with another regular language.  It also works if $L$ is regular, as any regular language is necessarily context-free.