In reality, there are no coins in the blockchain,
There isn't anything "physical" in bitcoin if that's what you mean otherwise we refer to transaction outputs both commonly and in code as "coins". a coin or output can have a value between 0 to 2100000000000000 satoshis.
there are only transactions between bitcoin addresses.
this is wrong. transactions aren't between addresses. but a transaction is spending one or more UTXO to create one ore more new UTXOs. these outputs may not correspond to any address at all. for example a non standard scriptpub or OP_RETURN outputs are not addresses.
The bitcoin transactions need to be signed using public-key cryptography,
this is correct but technically incomplete.
to spend a "coin" or UTXO one has to provide the "unlocking script" that can spend that output. in standard transactions this will include providing one or more ECDSA signatures.
The coins are just the balances
this is wrong. coins as i said earlier are the outputs which contain both an amount (value of the output) and a script (the locking script).
in fact there is no "balance" defined in bitcoin protocol
where the unit is BTC
the unit is actually satoshi
When bitcoin reaches parity with gold in terms of "market cap",
bitcoin is not supposed to reach parity with anything least of which a precious metal mainly becaue it is a currency.
You cannot split coins because there are no coins,
technically wrong. you can split the amount of a "coin" between multiple new outputs.
Only balances associated with a bitcoin address
again there is no such thing as "address balance" in bitcoin. there are only coins some of which are unspent aka UTXOs that are kept in a database build by each node known as chainstate.