LayoutLMv2 Fast Tokenizer improperly aligns labels for non-first subwords with 0 offsets
### System Info

```shell
Copy-and-paste the text below in your GitHub issue and FILL OUT the two last points.

- `transformers` version: 4.16.0
- Platform: macOS-12.3.1-x86_64-i386-64bit
- Python version: 3.8.9
- PyTorch version (GPU?): 1.8.1 (False)
- Tensorflow version (GPU?): not installed (NA)
- Flax version (CPU?/GPU?/TPU?): not installed (NA)
- Jax version: not installed
- JaxLib version: not installed
- Using GPU in script?: <fill in>
- Using distributed or parallel set-up in script?: <fill in>
```


### Who can help?

 @NielsRogge

### Information

- [ ] The official example scripts
- [X] My own modified scripts

### Tasks

- [ ] An officially supported task in the `examples` folder (such as GLUE/SQuAD, ...)
- [X] My own task or dataset (give details below)

### Reproduction

```
In [1]: from transformers import LayoutLMv2TokenizerFast
None of PyTorch, TensorFlow >= 2.0, or Flax have been found. Models won't be available and only tokenizers, configuration and file/data utilities can be used.

In [2]: tokenizer = LayoutLMv2TokenizerFast.from_pretrained("microsoft/layoutlmv2-base-uncased")

In [4]: toks = tokenizer(['그'], boxes=[[1,2,3,4]], word_labels=[2])

In [5]: toks
Out[5]: {'input_ids': [101, 1455, 30017, 102], 'token_type_ids': [0, 0, 0, 0], 'attention_mask': [1, 1, 1, 1], 'bbox': [[0, 0, 0, 0], [1, 2, 3, 4], [1, 2, 3, 4], [1000, 1000, 1000, 1000]], 'labels': [-100, 2, 2, -100]}

In [9]: toks.labels
Out[9]: [-100, 2, 2, -100]

```

### Expected behavior

```shell
Since the single word '그' was split into 2 tokens, the second subword should be assigned a -100 value.

This is happening because of logic here:

https://github.com/huggingface/transformers/blob/3f936df66287f557c6528912a9a68d7850913b9b/src/transformers/models/layoutlmv2/tokenization_layoutlmv2_fast.py#L599


where a token's offset is used to determine whether it is the first subword or not.

The problem with '그' is that it is split into 2 subword: 'ᄀ', '##ᅳ' that share an offset of (0,1) so both given the label of the word.

By using solely the word_index to decide which is a subword this problem can be avoided.
```

https://github.com/huggingface/transformers/blob/3f936df66287f557c6528912a9a68d7850913b9b/src/transformers/models/layoutlmv2/tokenization_layoutlmv2_fast.py#L599

<|||||>This issue has been automatically marked as stale because it has not had recent activity. If you think this still needs to be addressed please comment on this thread.

Please note that issues that do not follow the [contributing guidelines](https://github.com/huggingface/transformers/blob/main/CONTRIBUTING.md) are likely to be ignored.