I can understand your concern in this regard, I shall do my best to help you out.

If there is problem in achieving optimal erection and inability to achieve good penetration due to lack of 'hardness' of penis this could be erectile dysfunction. There are various causes for the same like sleep deprivation, stress, diabetes, hypertension, bad diet, lack of exercise etc. You need to avoid all of these and also get tested for the above mentioned diseases.

Avoid smoking and drinking alcohol as these can can cause many sex problems.

I recommend you try this technique. Ask your sexual partner to stroke your penis or masturbate your penis for you. This way your penis shall gain turgor better. Also spend more time in foreplay as this will increase hardness of penis. Once your penis achieves adequate turgor or hardness you can attempt to penetrate vagina and perform sex.

Regarding 'giving up early' it if possible you pass semen early than anticipated. This can lead to lot of frustration. You can try stop and squeeze technique. While having sex if you feel you are finishing soon, withdraw your penis immediately from vagina and ask your partner to press the tip of your penis firmly. This should prevent you from finishing early. Then after sometime when you feel comfortable you can penetrate again and repeat this as many times as you wish to enjoy long time sex.

Kindly perform these techniques and also engage in foreplay for better sexual experience. Consult your Urologist to look for any health problems which can cause these problems as mentioned above.

I hope I have answered your query. I will be available to answer your follow up queries.