Ja som föreslagits kan du använda orderByRaw()
Så din fråga skulle omvandlas som:
$result = Product::where("ProductCode", "LIKE", '%200%')
->orderByRaw('CHARINDEX('200', ProductCode, 1) DESC, ProductCode ASC')
->get();
Här antog man att modellnamnet är Product
för tabell products
.