Scratch has a grammar too; because it is only ever edited using a block-based editor, it can remove delimiters, since there is no parsing of serial text. However, note that it cannot remove them for the purpose of presentation: it’s still essential to delimit structure in Scratch programs by surrounding structure with colored rectangles. Colored rectangles, curly braces, whatever: they all do the same thing, which is denote the boundaries of structure implied by non-terminals in a programming language’s grammar. If you removed the colored rectangles—just as if you removed the curly braces—the program could not be parsed. That’s just a matter of presentation and editing, not a matter of the language itself.
Because non-terminals already define block structure, if we used your logic, then all programming languages would be “block-based”, since all languages have a grammar that defines structure in terms of non-terminals. Using programming language terminology, however, we would just say that all structure in programming languages is defined by a language’s grammar and it’s non-terminals, including Scratch.