Here is @Lwins answer expressed in another way. All credit goes to @Lwins for the idea.
Claim 1: Let $ALL_\mathsf{CFG}$ be the language of CFGs that accept all strings in some finite alphabet $\Sigma$. This language is undecidable.
Proof 1: (also Theorem 5.13 in Sipser) A decider could be used, for any given Turing machine $M$ and input $w$, to construct a CFG that rejects accepting computation histories for that $M$ on that $w$. Running the decider for $ALL_\mathsf{CFG}$ on this CFG would also decide $A_\mathsf{TM}$, the language of pairs $\langle M, w \rangle$ where $M$ accepts $w$. However, this would be impossible because $A_\mathsf{TM}$ is not decidable.
Claim 2: Let $MIN_\mathsf{CFG}$ be the language of minimum CFGs, i.e. CFGs for which all of its rules are necessary, and none can be omitted without losing strings. Let $ALL_\mathsf{MINCFG} \subset MIN_\mathsf{CFG}$ be the language of minimum CFGs that accept all strings. The language $ALL_\mathsf{MINCFG}$ is undecidable.
Proof 2: If we had such a decider, we could also decide $ALL_\mathsf{CFG}$ for any $G$ by running on subsets of rules of $G$.
Claim 3: Let $A_\mathsf{CFG}$ be the language of pairs $\langle G, w \rangle$ where the CFG $G$ accepts the input $w$. This language is decidable. (Proof is omitted here and can easily be found elsewhere).
Claim 4: For any necessary rule $R$ in some CFG $G$, it is possible to compute in finite time some string $w_R \in G$ which could not be generated without $R$.
Proof 4: Lexicographically generate all strings $w$ and use the $A_\mathsf{CFG}$ decider on $w$ and $G$ with and without $R$. Since $R$ is necessary, some $w_R$ exists and this procedure is guaranteed to halt.
Claim 5: Suppose it were possible to decide $MIN_\mathsf{CFG}$. Suppose also that we are given a minimum $G$ and a string $v$ that for all rules $R$ is longer than at least one $w_R$. Then it would be decidable whether $v \Sigma^\star \subseteq G$.
Proof 5: Augment $G$ to $G_v$ by adding the rules $S \rightarrow v T$ (where $S$ is the start variable of $G$ and $T$ is a new variable) along with $T \rightarrow \varepsilon$ and $T \rightarrow T \sigma$ for every $\sigma \in \Sigma$. These new rules generate only $v \Sigma^\star$. The original rules $R$ are guaranteed to still be necessary in $G_v$, since $|w_R| < |v|$.
We then ask if any of the new rules are necessary. To answer this, we repeatedly run our $MIN_\mathsf{CFG}$ decider, each time keeping a different non-empty subset of the $T$ rules. If $MIN_\mathsf{CFG}$ ever accepts, then we know that some strings in $v \Sigma^\star$ are missing in $G$. Otherwise, none of the new rules in $G_v$ are necessary, and thus $v \Sigma^\star \subseteq G$.
Main result:
A decider for $MIN_\mathsf{CFG}$ would imply a decider for $ALL_\mathsf{MINCFG}$ (Hence, $MIN_\mathsf{CFG}$ is undecidable).
Proof
Suppose we had a decider for $MIN_\mathsf{CFG}$ and input $G$. If this decider rejects $G$, then $ALL_\mathsf{MINCFG}$ must also reject.
Otherwise, we know $G \in MIN_\mathsf{CFG}$ and thus for each rule $R$ in $G$, we can (Claim 4) compute a $w_R$ for which that $R$ is necessary. Choose some integer $\ell$ larger than the length of the longest $w_R$ we happened to find, and use $A_\mathsf{CFG}$ to check if $u \subseteq G$ for all $|u| < \ell$, and (Claim 5) also if $v \Sigma^\star \subseteq G$ for all $|v| = \ell$. $ALL_\mathsf{MINCFG}$ accepts if and only if both of these are true.