I read now a bit in the specification - Volume 3, Part H, Section 3.5.1 Pairing Request and 3.5.2 Pairing Response.
IMHO encryption is mandatory after devices have been paired, as the initiator must send a maximum key size to be used:
Maximum Encryption Key Size (1 octet)
This value defines the maximum encryption key size in octets that the device
can support. The maximum key size shall be in the range 7 to 16 octets.
This ensures my comment also that since 2.1 encryption is mandatory.
So you cannot choose a key size of lets say 0 length, in order to get paired. I don´t know however if there is an ad-hoc mode available which would allow non-paired data exchange (but I don't believe this).
Note that this means only encrypted data stream. Authentication is a different thing. For example, you cannot verify that you connect to the right Bluetooth headset as it has no display or keyboard (still you could read it´s MAC address before you confirm, e.g.). So with some pairing modes I would assume that authentication is on a low trust level (by design).
IMHO as Bluetooth was a replacement for serial/infrared communication in the beginning, it always struggled with security. I would consider it a nice feature for some gadgets, but would not exchange sensitive information (= it´s not equal to WiFi or LAN).