Hi facehugger2020,
in order to fix your problem, you will need to train a BERT tokenizer yourself, and then train the BERT model too.
When a BERT model is created and pre-trained, it uses a particular vocabulary.   For example, the standard bert-base-uncased model has a vocabulary of 30000 tokens.   “2.5” is not part of that vocabulary, so the BERT tokenizer splits it up into smaller units.
Training from scratch with the vocabulary you need is not impossible, but it will be tricky and probably expensive.     Could you force your NER tags to fit with the BERT tokenization?   For example, could you perform the tagging after the tokenization?