One possibility is to only stabilize GATs with lifetime parameters:
#![allow(unused)] fn main() { trait Iterable { type Item<'a>; } }