BSD-style license does not guarantee these freedoms, and Stallman sees wider adoption of projects using those licenses as a threat to free software.
But why is that the case? I know there is the contrived case of a codebase being improved and re-packaged under a proprietary license but that just doesn't happen, part of the reason is the original codebase is still there and other people can still use and improve upon it. The most popular web server in the world is licensed under this model and it hasn't happened there.
The standard example is Unix. Each computer manufacturer ported it to his computers, then improved it to make his product (hardware plus software) more appealing in the marketplace. The improvements weren't shared, so there was fragmentation: applications would run on some Unix systems but not others. POSIX and Single Unix System were attempts to fix the problem by standardizing certain parts of the user-mode API, but they weren't enough.
The problem was finally solved by a clean-room reimplementation of the utilities (GNU) and the kernel (Linux). Both are available under the GPL, which requires improvements to code to be released in source if the binary is distributed.