1. Yes, you are required to buy/use your own IDs registered with bluetooth SIG. See this page: http://www.cypress.com/knowledge-base-article/queries-ble-qualification-and-declaration-processes-kba210802
3. You can assign the entire 128-bit UUID I believe; The idea is to keep it unique if possible though, hence using the RNG from the cypress IDE will help prevent accidental collisions with other UUIDs.
4. Each service/characteristic/GATT item has it's own UUID, and thus you would use the UUID to differentiate between services and data on a device you are already connected to, but you would use the BLE "MAC Address" to connect to correct devices. Or specific flags/data in the advertisement packets upon scanning for devices. (E.G. Logitech BLE keyboard would send out advertisement packets with "LG 7921837" for BLE software to discover)
Related pages that might be helpful:
thank you for clarification, that helps a lot.