Is it ok and safe to import master public key from electrum wallet into bluewallet to be a watch-only wallet?
Is it safe to do so?

It should be considered safe. For better privacy and security, using your own Electrum server in Bluewallet could also help. Creating transactions in a watch-only wallet using bluewallet and signing them using Electrum offline has no issues.

Is there any better way to do it so I don't have to send the unsigned and signed transaction back and forth?

After signing the transaction you can broadcast it from anywhere. For example: I can sign it on a mobile device which is not connected to Internet but can send text messages, can encode transaction hex and broadcast it using text messages. Related Q&amp;A
Or you can broadcast transaction using this link in Tor browser on an online device: http://explorerzydxu5ecjrkwceayqybizmpjjznk5izmitf2modhcusuqlid.onion/nojs/tx/push but you will have to copy the transaction hex after signing or maybe just scan QR code.
FullyNoded is also a good project that you may find interesting considering you have an iPhone.