How to use DI with simple objects?
Yes. Just require the services you need in your constructor, and wherever you create your object, pass them in.

That is the very definition of dependency injection.

The container/services are just a way to describe your dependencies to the environment/Drupal so it can do that automatically but that is in no way a requirement.

What you probably want to do is to use the factory pattern, so that you have a factory, which you can define a service, which offers a method to get your value object with the necessary services injected. Drupal 8 has various examples for the, for example KeyValueDatabaseFactory (keyvalue.database), which has a get($collection) method. Each call creates a new object, passes the dependencies that object needs to it and then returns it.