I'am assuming you are 'just' developing solutions.
Your customers are only interested in a product - not tech side.
So, your goal should be: "How I can develop (and maintain) this product in the most efficient way?".
Step 1 : Get stable grounds
Pick a language that can solve most of common challenges that you will tackle.
Make yourself proficient in it.
You need to minimize time spent on thinking "how I can do it in X language?".
(You've got Java/C# skillset so most of your web skills should be around here).
Step 2 : Optimize
You've got another web project? That's great!
You just need to pick up template with all boilerplate (like: logging, monitoring, deployment, auth etc.) from last project and fill missing features.
Step 3: Extend
Now, you can finish most of your projects in seconds.
It's time to find new clients. Search for new domain - like: mobile, embedded or machine learning.
This time you can decide if your existing toolset is enough for new problems or rather, adding new one will be more beneficial to you.
Like: You can do a lot of ML stuff in C# but Python is the place where all important stuff happens.
PS:
IaaS vs PaaS
Here is question for you:
Do you like to do more admin stuff for low cost hosting?
Or do you like to focus on coding and spent a bit more money and let cloud do most of admin work for you?
It's a your time vs money optimization.
Personally, for small (scale) project I'am running with IaaS - but I already have knowledge how to do it.
For big ones - it's better to stick with PaaS - even very skilled DevOps can't single-handedly deal with big scale.
For you I would advise using PaaS since you don't have experience with neither PaaS nor IaaS.
PaaS is a lot easier to learn and you can always migrate your code to IaaS as a Step 2 :)
Good luck and have fun.