Answering my own question:
Is it proper way to do such things? I mean unlocking free trial app using in-app purchase.
The final decision was to make limited APP with managed build-inn purchased for unlocking PRO functions. This model works good for me. Users happy to use some functionality for free. If they need more or they want to support development they buy pro license.
Is it easy to restore transaction after reinstallation of application/changing devise? Do
I need to save some information about transaction on my web server or something?* Google storing purchased items for accounts. And you are free to request it restoring from app. So no problem and you don't need your server.
Does anyone have some experience in this way?
Found apps that successfully use same way. My app is one of it now.
Recommendation: For easy use of IN-APP billing API found really good free and open source library AndroidBillingLibrary that make it fairly easy to implement. https://github.com/robotmedia/AndroidBillingLibrary