!editcom !goal TYGALAXY is $(eval 3000-$(twitch $(channel) "{{followers}}")) followers away from reaching the goal!
displays 19 because $(twitch $(channel) "{{followers}}") is replaced by 2,019. This means that 3000-2,019 is being evaluated. This expression contains the comma operator, which evaluates each of its operands and returns the value of the last operand. This means that 3000-2 and 019 are being separately evaluated, and 19 is being returned.
Try this command:
!editcom !goal $(eval followersString = `$(twitch $(channel) "{{followers}}")`; followers = parseInt(followersString.replace(/,/g, "")); followers ? `TYGALAXY is ${(3000 - followers).toLocaleString()} followers away from reaching the goal!` : followersString)