OP's concern is valid. What if your old wallet format does not get recognized by new clients and the old clients are not able to send transactions after 2 years? (private key is relatively safe but still... see below)
In fact, in today's bitcoin design, nothing is guaranteed. A new protocol that is accepted by majority of the nodes can even spend your coins without your private key. Of course such a situation will almost never happen because of the decentralized nature of bitcoin: Existing stakeholders have many reasons to deny such kind of protocol change, since it basically ruins people's trust in bitcoin
However, if the protocol change is coming from a malicious actor or sybil attack, then old coins might still get lost in a compromised environment
The most important is to be aware that unlike gold, no rule of bitcoin is fixed by law of nature, they are just rules made by human and maintained by consensus among its participants. So you can expect that different clients have different rules, but usually you don't get enough details about these rules unless you are familiar with source code inspection and build the client by yourself each time