From this article, we can conclude that your tokens cease to be impersonal. That is, tokens acquire the properties of some preferred and ordinary shares, as payments will be differentiated depending on the period of purchase of tokens by the owners. You consider using token standard erc721 in order to organize this rather complicated system of payments. But it seems to me that this excessive complication is not the best solution in this case...
We are open to receive any input from the community so if you can tell us more about your point of view, it will be very appreciated

Initially we wanted to whitelist address within the smartcontract. It is the easiest solution at the moment. The idea of the token comes with the idea that this token would be an asset that could be transmitted.