#Haskell, 131, 114, 106 bytes
Haskell, 131, 114, 106 bytes
iterate(\n->minimum[x|x<-[read(show=<<filter(/=k)[i..j])::Int|i<-[1..n],j<-[i+2..n],k<-[i+1..j-1]],x>n])13 This is limited by the size of Int, but it can be easily extended by replacing Int with Integer.
Less golfed:
concatInt x = read (concatMap show x) ::Int allUpToN n = [concatInt $ filter (/=k) [i..j] | i <- [1..n], j <- [i+2..n], k <- [i+1..j-1]] f n = minimum[x | x <- allUpToN, x > n ] iterate f 13 8 bytes golfed by @nimi.