Распространенное заблуждение. Значение 1000 - это не 1000 оборотов шпинделя, это количество отсчетов.
$30=1000 - это и есть нормально.
Параметр $30 задает максимальные обороты шпинделя в об/мин, соответствующие максимальному напряжению на выходе ШИМ, равному 5В. По-умолчанию Grbl строит линейную зависимость из 255 отсчетов между максимальными-минимальными оборотами шпинделя и напряжениями на выходе ШИМ из диапазона 5В-0.02В
Если поставить $30=127, шпиндель будет раскручивать на половину своих максимальных оборотов вне зависимости какие у него обороты максимальные. Если максималка у шпинделя 20 000, он будет раскручиваться до 10 000, если максималка 10 000, будет раскручиваться до 5 000.
Задайте хоть 100000, всё равно на выходе ШИМ будет 5 вольт, но 100000 оборотов вы выжать из своего шпинделя не сможете. У вас скачки из-за того что слишком много задали. При $30=1000 шпиндель будет раскручиваться до своей максималки. И при $30=255 тоже будет раскручиваться до максималки.
А какое значение $30 у вас было на старом шпинделе. Подозреваю, что было 1000